Hello Sven, Hello Christian,
Die Kombination aus tempnam() und move_uploaded_file() ist ungeeinget, da zwischen den Arbeitsschritten eine Kontrolllücke entsteht.
Es gibt Methoden, auch ohne fopen(), Locking etc., konfliktfrei in der Multiuserumgebung einen Dateinamen zu finden und mit move_uploaded_file() zu benutzen, ohne sich Dateien zu zerstören:
Und wie lauten die?
Zusätzlich gibt es auch noch die Methode, mit zwar fopen($f,"x") sicherzustellen, dass die Datei nicht existiert, aber danach trotzdem move_uploaded_file() nutzt.
Das ergibt aber bestimmt eine wilde Konstruktion und ich bin mir noch nicht einmal sicher, dass Du weißt, wie das ablaufen soll. Ich kann es mir jedenfalls nicht vorstellen. Es sei denn, dass move_uploaded_file() alle POSIX-Empfehlungen missachten würde (Streams sind für die / während der Bearbeitung zu sperren)...
MMn geht das auch nicht, ohne eine Kontrolllücke zu erzeugen. Und da haben wir dann schon wieder das Problem...
Euch beiden empfehle ich mal das intensive Studium von Christian Seilers Artikel
http://aktuell.de.selfhtml.org/artikel/programmiertechnik/dateisperren/
Liebe Grüße aus dem schönen Oberharz
Tom vom Berg