Sie befinden sich hier im Forenarchiv von phpforum.de wenn Sie direkt ins Forum möchten, klicken Sie bitte hier. Zur Startseite kommen Sie hier.

dateiupload mit db-id als name

mir ist folgendes in den sinn gekommen und brauche mal ein tip fürs umsetzen.

ich möchte für ein news script mit einem bild folgendes machen:

wenn ich das bild uploade soll das bild die db-id bekommen die dann der newsbeitrag erhält.

wie bekomme ich vor dem upload die nächste id aus der datenbank. eine abfrage wäre dann
nötig? noch ne anmerkung, ich lade zuerst das bild hoch um eine vorschau zu ermöglichen und
dann wird der newsbeitrag eingetragen.

Hier gehts zum Orginal Eintrag "dateiupload mit db-id als name" im Forum

Antworten

Ich denke die Idee ist etwas problematisch, da ja ein anderer Newsposter in dem Moment, in dem du deinen Newsbeitrag schreibst oder in der Vorschau ansiehst, seine News fertig haben könnte und sie absendet. Wenn du dann bei der Vorschau/beim Upload schon die nächste ID ausliest - was IIRC irgendwie möglich ist - hat das Bild dann plötzlich die ID des vorhergehenden Newsbeitrages.
Es gibt allerdings andere Methoden, die letztendlich auf's selbe Ergebnis kommen müssten:
1. Du speicherst das Bild solange in einer temporären Datei, bis der Newseintrag in der Datenbank abgelegt wurde. Anschließend verschiebst du das Bild aus der temporären Datei auf den richtigen Dateinamen.
2. (vermutlich besser) Du legst eine zusätzliche Tabelle für die Bilder an. Jedes Bild bekommt folglich eine eigene ID, doppelte Dateinamen können z.B. dadurch ausgeglichen werden, dass du dem Bild auf die ID umbenennst, und können dann in der Tabelle der Newsposts zu einer News assoziiert werden. Das hat den Vorteil, dass du Bilder immer wieder benutzen kannst, wenn sie erstmal in der Datenbank sind. Außerdem können zusätzlich Daten wie die Größe, Maße, Uploader, Upload-Datum und MIME-Type in der Tabelle untergebracht werden. Dadurch hättest du gleich die Möglichkeit einer kompletten Bilderverwaltung.

hth


2.

Ums kurz zu machen: Es ist unmöglich, zuverlässig die "nächste" zu vergebende ID aus einer MySQL-Datenbank zu ermitteln. Ansonsten schließe ich mich meinem Vorredner an.


Hier gehts zum Orginal Eintrag "dateiupload mit db-id als name" im Forum
 
phpforum.de | Impressum