Tom: Datei-Upload und -Bearbeitung

Beitrag lesen

Hello Matze,

das Problem scheint mir eher im Verständnis des Mechanismus für den Dateiupload zu liegen. Da sind sich die Webserver dank HTTP-Protokoll eigentlich alle einig:

Der Upload von Daten erfolgt in ein temporärverzeichnis. Nachdem der HTTP-Upload erfolgt ist, wird das Script aufgerufen un ihm bei PHP im Array $_FILES die Upload-Referenzen übergeben. Das Script ist ein Child-Process des HTTP-Handlers und erbt die Handles der uploaded Files. Dabei handelt es sich aber um echte Temporärdateien des OS. Wenn also das Script stirbt und die Handles vorher nicht weitergegeben hat, dann werden diese automatisch zurückgegeben und werden wieder freigegeben. Du musst also dafür sorgen, dass die uploaded Files innerhalb des angesprochenen Scriptes aus dem Temporär-Status in einen Persistenten überführt werden, sprich eine Kopie davon anlegen in einem möglichst außerhalb der Doc-Root liegenden Zielverzeichnis. Dafür steht bei neueren PHPs die Funktion move_uploaded_files() zur Verfügung.

In den nächsten Scripten kannst Du die Datei dann über ihren _neuen_ Dateinamen ansprechen. Je nach Aufbau Deiner Benutzerverwaltung kannst Du den Zugriff darauf steuern.

Info darüber findest Du unter http://de.php.net/features.file-upload

Wenn Detailfragen bestehen, frag nach.

Liebe Grüße aus http://www.braunschweig.de

Tom

--
Fortschritt entsteht nur durch die Auseinandersetzung der Kreativen