Autor Beitrag
Marco D.
ontopic starontopic starontopic starontopic starontopic starontopic starhalf ontopic starofftopic star
Beiträge: 2750

Windows Vista
Delphi 7, Delphi 2005 PE, PHP 4 + 5 (Notepad++), Java (Eclipse), XML, XML Schema, ABAP, ABAP OO
BeitragVerfasst: Fr 20.04.07 16:10 
Auf unsere Schulwebsite gibt es einen Eingabe-Editor ähnlich wie diesem hier, indem ich gerade schreibe. Man kann auch Bilder hochladen, die dann ein php-Script entgegennimmt. Das funktioniert auch wunderbar.
Wenn der User nun auf Vorschau klickt, dann wird die Seite ja neu geladen. Wie kann ich nun aus dem php-Script heraus auslesen, welche Bilder hochgeladen wurden und dieselbigen dann anzeigen? Sprich: Enthält $_FILES nach einem Neustarten der Seite immernoch ALLE hochgeladenen Bilder der aktuellen Session? Habe bei Google usw. dazu nichts gefunden, was diese Frage beantwortet.

_________________
Pascal keeps your hand tied. C gives you enough rope to hang yourself. C++ gives you enough rope to shoot yourself in the foot
BenBE
ontopic starontopic starontopic starontopic starontopic starontopic starhalf ontopic starofftopic star
Beiträge: 8721
Erhaltene Danke: 191

Win95, Win98SE, Win2K, WinXP
D1S, D3S, D4S, D5E, D6E, D7E, D9PE, D10E, D12P, DXEP, L0.9\FPC2.0
BeitragVerfasst: Sa 21.04.07 19:44 
Die $_FILES-Variable enthält nur die aten für die aktuelle Anfrage, also die Dateien, die mit dem aktuellen Aufruf hochgeladen wurden. Mit der Session hat das nichts zu tun. Wenn Du die Informationen über mehrere Aufrufe hinweg speichern willst, musst Du diese Information entweder im Webform mitgeben (unsicher) oder in der Server-Session (sicherer, aber Anfällig gegen manche Angriffe) speichern.

Eine gute Möglichkeit wäre, hochgeladene Bilder in einer "Session Files Table" zu verwalten (also die Dateinamen) und in der eigentlichen Session nur die IDs dieser Session-Tabelle zu speichern. Innerhalb der Session File Table werden diese Bilder über einen FK an die Session-Tabelle gebunden und selber eindeutig über einen PK indiziert. Ferner kann ein weiteres Fel für den Verwendungszeick z.B. "PostNew", "PNNew", "PostImg", ... vergeben werden, um auch vielen offenen Browserfenstern bei Multiprocessing-Fähigen Nutzern noch korrekte Ergebnisse zu erhalten ;-) Bilder, deren SessionID ungültig abgelaufen ist, oder, die als Download aufgenommen wurden, können danach aus der SessionFile Table ausgetragen werden UND im Falle der abgelaufenen Session vom Server entfernt werden. Innerhalb der Session File Table sollten die vollständigen Infos des $_FILES-Arrays rekonstruierbar bleiben.

_________________
Anyone who is capable of being elected president should on no account be allowed to do the job.
Ich code EdgeMonkey - In dubio pro Setting.