4images Forum & Community
4images Issues / Ausgaben => Discussion & Troubleshooting => Topic started by: Sr.Corto on December 12, 2006, 07:11:54 PM
-
Hi! Wenn ich ein oder mehrere gezippte Bilder downloaden will, kommt die Fehlermeldung: "Cannot get temporary file!"
Weiss jemand Rat?
Vielen Dank!
MfG Corto
edit: Ihr könnt euch auch gerne mal unter http://pino.pytalhost.de/4images/ mit test/test anmelden und schauen
-
Das bedeutet, dass die Funktion tmpfile() (http://de.php.net/manual/de/function.tmpfile.php) keine temporäre Datei im System anlegen kann. Frage mal bei Deinem Hoster diesbezüglich nach. Evtl. hat er das in der Konfiguration unterbunden.
-
in welchen ordner wird die datei denn geschr.?
MfG Corto
-
In den temp-Ordner des Servers. Das hat nichts mit 4images deshalb musst Du auch Deinen Hoster kontaktieren.
Gruß Jan
-
hab beim hoster nachgefragt....die hatten tmpfile() mal wegen eines sicherheitsloches in php deaktiviert, jedoch sollte es seit einiger zeit wieder funktionieren...(er hat mir auch noch geraten php einmal zu deaktivieren, kurz zu warten und wieder zu aktivieren... hat aber auch nix gebracht)
Gibt es nicht vllt. noch eine andere Lösung?
Vielen Dank!
MfG Corto
-
Probiere mal folgendes. Öffne includes/zip.php und ersetze
$this->tmpfp = @tmpfile();
mit
$path = ROOT_PATH . "tmp";
$handle = opendir($path);
while ($file = @readdir($handle)) {
if ($file{0} == ".") {
continue;
}
if (@is_file($path."/".$file)) {
if ((filemtime($path.'/'.$file) + (60 * 5)) < time()) {
@unlink($path."/".$file);
}
}
}
$this->tmpfp = fopen(tempnam($path, "zip"), "wb+");
Falls es damit noch nicht funktioniert, erstellst Du im 4images-Ordner einen Ordner "tmp" (chmod 777).
-
HI!
Vielen Dank!
Der Hoster hat das wohl mal selbst ausprobiert und hat mir geschrieben, dass ich doch mal
$this->tmpfp = @tmpfile();
mit
$this->tmpfp = fopen(tempnam(ini_get("upload_tmp_dir"),""), "w+");
ersetzen solle.... hier wird ja dann die funktion fopen() benutzt... wo genau liegt der unterschied, bzw. was ist besser?
Danke! MfG Corto
-
Das ist im Prinzip das gleiche. Er benutzt das Uploadverzeichnis von PHP und ich ein egenes Verzeichnis plus Routine um alte Dateien zu löschen. Kannst Dir eins aussuchen ;)
-
aso... und wann werden die tmps von php dann gelöscht? ...eigentlich auch nich so wichtig...Danke!!!
MfG Corto
-
Hallo! Ich habe ebenfalls ein Problem mit dem zip-Download
Bei meinem Hoster habe ich auch schon nachgefragt, woraufhin mir der folgende Tmp-Pfad mitgeteilt wurde:
/is/htdocs/user_tmp/MEINE_KUNDENNUMMER/
Meine Frage ist nun, wie bzw. wo soll ich den Pfad in der Datei zip.php einfügen?
Grüße, matobi
-
O.K. ich habe das Problem behoben!
ich habe einfach wie oben beschrieben:
$this->tmpfp = @tmpfile();
durch
$this->tmpfp = fopen(tempnam(ini_get("upload_tmp_dir"),""), "w+");
ersetzt. Jetzt geht es!
-
sorry, hab dein voriges posting nicht gelesen...
schön das es funktioniert.
LG