Alexander Foken: Ein paar Fragen zu Datei-Uploads

Beitrag lesen

Moin Moin !

  1. Wie prüfe ich, ob der Anwender einen gültigen Dateipfad im File-Feld angegeben hat? Ich bekomme, wenn ich z.B. "ABC" eingebe: Warning: getimagesize() [function.getimagesize]: Read error! ...

Gar nicht. Du prüft, ob der Anwender ein Bild mitgeschickt hat oder nicht. Hast Du multipart/mixed in deinem FORM-Tag stehen?

In der angegebenen Zeile steht: getimagesize($_FILES["datei"]["tmp_name"])
2. Kann ich die Breite des File-Feldes nicht ändern?

Du kannst es versuchen. Aber es steht dem Browser frei, Deine Angaben zu ignorieren.

  1. Wenn ich eine für die PHP-Einstellungen (upload_max_filesize) zu große Datei versuche upzuloaden, dann bekomme ich nach einer Weile die Fehlermeldung: Fatal error: Maximum execution time of 30 seconds exceeded ...

Dann rennt Dein Script wohl in eine Endlosschleife. So lange sollte ein Upload nicht dauern.

Wie kann ich das abfangen und sowas wie "Zu große Datei" ausgeben?

Abfangen kannst Du das nicht, denn in dem Moment, wo die Fehlermeldung kommt, hast Du keine Kontrolle mehr.

Du kannst überprüfen, ob der User einen Upload gemacht hat und ob der Upload Deinen Anforderungen (MIME Type, Dateigröße, Dateiinhalt) entspricht.

Alexander

--
Nein, ich beantworte keine Fragen per eMail. Dafür ist das Forum da.
Today I will gladly share my knowledge and experience, for there are no sweeter words than "I told you so!"