Warnung: file_put_contents(/home/www/web1/html/php_dev/test.txt) [function.file-put-contents]: failed to open stream: Permission denied in /home/www/web1/html/php_dev/sys/lib.activity.php (Zeile 58)
Erkennen von Dateigrößenüberschreitung und Timeout [Archiv] - PHP-Scripte PHP-Tutorials PHP-Jobs und vieles mehr

- Ad -
php-resource




Archiv verlassen und diese Seite im Standarddesign anzeigen :
Erkennen von Dateigrößenüberschreitung und Timeout


 
yxcvbnm
30-11-2005, 11:47 
 
Hallo,

ich habe ein Formular erstellt um nacheinander mehrere Dateien hcohzuladen. Solange sich der Anwender an die angegebene maximale Dateigröße hält klappt auch alles. Versucht der Anwender eine Datei hochzuladen die größer ist als post_max_size bzw. upload_max_filesize wird der Upload gestartet und bricht dann irgenwann ab. Danach wird die Seite wieder wie vorher angezeigt. Ich würde jedoch gern eine Fehlermeldung anzeigen.

Woran kann ich erkennen das die Datei zu groß war? Das selbe Problem gibt es bei Timeouts. Werden irgendwelche globalen Variablen gesetzt woran ich so einen Fehler erkennen kann?

 
mrhappiness
30-11-2005, 11:49 
 
Hilft dir http://www.php.net/manual/features.file-upload.errors.php?

 
yxcvbnm
30-11-2005, 13:02 
 
Danke für die schnelle Antwort. Ich habs ausprobiert und auf meinem lokalen Webserver funktioniert das. Die Einstellugen sind hier:

upload_max_filesize = 2M
post_max_size = 8M

Mit diesen Einstellungen bricht er ab weil upload_max_filesize überschritten wird und der Fehler steht im File Array. So weit so gut.

Auf dem Webserver wo das Skript laufen soll sind die Einstellungen:

upload_max_filesize = 10M
post_max_size = 8M
(Die kann ich auch nicht administrieren)

Das heißt er bricht wegen Überschreitung von post_max_size ab und es steht nichts im FileArray.

Kann ich so eine Überschreitung extra abfragen?

Macht es überhaupt Sinn upload_max_filesize größer als post_max_size einzustellen?

 
wahsaga
30-11-2005, 13:16 
 
Original geschrieben von yxcvbnm
Macht es überhaupt Sinn upload_max_filesize größer als post_max_size einzustellen?
Hm, eigentlich nicht sonderlich.

Frag deinen Provider/Server-Admin mal danach, welchen Sinn das haben soll - und ob sie/er es ändern können.
Mein Tipp wäre, upload_max_filesize noch um ein paar KB kleiner zu wählen als post_max_size - denn bei einem Uploadformular können ja noch ein paar andere POST-Daten hinzukommen ...

 
mrhappiness
30-11-2005, 13:23 
 
1. Kommentar auf der von mir verlinkten Seite:if post is greater thanpost_max_size set in php.ini

$_FILES and $_POST will return emptySchau dir also mal $_SERVER['REQUEST_METHOD'] an, wenn da POST drinsteht und $_FILES leer ist, kannst du - denke ich - davon ausgehen, dass der beschriebene Fall eingetreten ist.

Sinn macht die Enstellung übrigens nicht.

 
yxcvbnm
30-11-2005, 13:49 
 
Über diesen Umweg scheint es zu funktionieren.

Für Timeouts gibts dann wohl auch keine direkte Abfrage?


Alle Zeitangaben in WEZ +2. Es ist jetzt 17:44 Uhr.