Welcome, Guest. Please Login or Register.
May 04, 2024, 03:33:20 PM
Home Help Search Log in Register
News: SMF is the next generation in forum software, almost completely re-written from the ground up, make sure you don't fall for cheap imitations that suffer from feature bloat!

YaBB SE Community  |  German User Help  |  Hilfe zu YaBB SE  |  Attachment System « previous next »
Pages: [1] Reply Ignore Print
Author Topic: Attachment System  (Read 3314 times)
Hondo
Jr. Member
**
Posts: 68


Ich bin kein llama, ich bin ein Hund.

WWW
Attachment System
« on: January 21, 2004, 07:58:12 AM »
Reply with quote

YaBB SE Version: 1.5.4
PHP Version: 4.2.3
MySQL Version: 3.23.x
Server Plattform:
Link zum Forum: www.access-o-mania.de

Problem Beschreibung:
Hallo,
das Attachment-System finde ich ziemlich unausgereift - lädt ein User test.mdb hoch, so wird, fall die Datei schon vorhanden, eine Meldung ausgegeben. Also muss der User seine DB umbenennen, und es nochmal versuchen.
In meinem alten Forum (nicht YaBBSE) habe ich das so gemacht, dass ich den upload umbenannte in ThreadId + Filename, so dass es möchlich war, mehrere Test.mdb nebeneinander zu haben, da diese sich durch die ThreadId unterscheiden.
Beim Anzeigen des Uploads im Thread habe ich dann die ThreadId wieder abgeschnitten, so dass es niemand auffällt.
Was haltet ihr von der Idee? Hat schon mal jemand das Attachment-System entsprechend angepasst? Gibts gar ein Mod dafür?

Gruß Andreas
« Last Edit: January 21, 2004, 08:20:45 AM by Hondo » Logged

SnowCrash
Full Member
***
Posts: 110


Re:Attachment System
« Reply #1 on: January 21, 2004, 09:18:08 AM »
Reply with quote

Ein möglicher Work-around für das Problem wäre folgendes:

Du fügst die folgende Funktion in Subs.php ein:

   function findFilename($filename='')
   {
      if ($filename)
      {
         $count      = 0;
         $path_parts   = pathinfo($filename);
         $fpath      = $path_parts["dirname"].'/';
         $fname      = substr($path_parts["basename"],0,intval(strlen($path_parts["basename"])-strlen($path_parts["extension"]))-1).'_';
         while (file_exists($fpath.$fname.$count.'.'.$path_parts["extension"]))
            $count++;
         return $fname.$count.'.'.$path_parts["extension"];
      }
   }


und suchst dann in Post.php nach

      if (file_exists($modSettings['attachmentUploadDir'] . "/" . $HTTP_POST_FILES['attachment']['name']))
         fatal_error($txt[yse125]);


und ersetzt es durch:

      if (file_exists($modSettings['attachmentUploadDir'] . "/" . $HTTP_POST_FILES['attachment']['name']))
         $HTTP_POST_FILES['attachment']['name']   = findFilename($modSettings['attachmentUploadDir'] . "/" . $HTTP_POST_FILES['attachment']['name']);


dadurch sollte folgendes passieren:

Der erste User läd eine Datei "test.mdb" hoch (btw. wer mit Access Applikationen baut gehört eigentlich eh bestraft *g*) ... diese bekommt auf dem Server den Namen "test.mdb" ... nun läd ein anderer User eine Datei "test.mdb" hoch ... das Script merkt es und benennt die Datei in "test_0.mdb" um ... wenn nun noch eine "test.mdb" hochgeladen wird, bekommt diese den Namen "test_1.mdb" usw.

Ich hab den Code allerdings nicht grossartg getestet... Benutzung also auf eigene Gefahr.
Logged

It's better to be hated for who you are
then to be loved for who
you are not...
[/b][/i]
Hondo
Jr. Member
**
Posts: 68


Ich bin kein llama, ich bin ein Hund.

WWW
Re:Attachment System
« Reply #2 on: January 21, 2004, 09:31:09 AM »
Reply with quote

Hallo,
danke für das Posting.
Sowas ähnliches habe ich gesehen, als ich das Forum durchsucht habe, in einem Link zu einem Forum sah ich genau dies, es ging dabei um Autos. Wusste aber nichts anzufangen.
Aber was deine Aussage bez. Access angeht - meine Anwälte schreiben schon eine Abmahnung ;-)

Gruß Andreas
Logged

SnowCrash
Full Member
***
Posts: 110


Re:Attachment System
« Reply #3 on: January 21, 2004, 10:09:05 AM »
Reply with quote

Quote from: Hondo on January 21, 2004, 09:31:09 AM
Aber was deine Aussage bez. Access angeht - meine Anwälte schreiben schon eine Abmahnung ;-)

Kein Problem. Ich hab damit schon soviel gemacht das ich meine Aussage durchaus belegen kann :P (ich bin ein beruflich von Access Betroffener *g* oder anders: wir haben schon diverse Systeme auf Access-Basis für Krankenkassen gebaut) ... meiner Meinung nach ist Access der verzweifelte Versuch von Microsoft eine Datenbank mit einer Entwicklungsumgebung zu kreuzen ... dabei ist aber leider Beides auf der Strecke geblieben ... wenn ich schon sehe wie sich MDB-Files alleine durch minimalste Änderungen aufblähen bekomm ich Zustände ... oder das schöne Phänomen das (früher ?) auftritt das man Code plötzlich nicht mehr ausführen kann bis man in ein Modul reingeht, einmal auf die Leertaste haut und schon läuft es wieder (weil der Compiler dann neu übersetzt) ...

Ich kann Dir gerne die Liste noch weiterführen... z.B. könnte ich mit der gleichzeitigen Installation von Access 2000 und der 97er Runtime weitermachen ... und den Problemen die daraus entstehen ... oder soll ich mal die Stichworte Reports + unterschiedliche Drucker fallen lassen ;D

Wäre aber nett wenn Du schreiben könntest ob der Code oben funktioniert...
Logged

It's better to be hated for who you are
then to be loved for who
you are not...
[/b][/i]
Hondo
Jr. Member
**
Posts: 68


Ich bin kein llama, ich bin ein Hund.

WWW
Re:Attachment System
« Reply #4 on: January 21, 2004, 10:17:03 AM »
Reply with quote

Hallo,
bin gerade am Installieren von anderen Mods.
Melde mich in den nächsten Tagen auf jedenfall.

Gruß Andreas
Logged

Pages: [1] Reply Ignore Print 
YaBB SE Community  |  German User Help  |  Hilfe zu YaBB SE  |  Attachment System « previous - next »
 


Powered by MySQL Powered by PHP YaBB SE Community | Powered by YaBB SE
© 2001-2003, YaBB SE Dev Team. All Rights Reserved.
SMF 2.1.4 © 2023, Simple Machines
Valid XHTML 1.0! Valid CSS

Page created in 0.013 seconds with 20 queries.