dedlfix: $_FILES['bild']['tmp_name'] überprüfen ob vorhanden?

Beitrag lesen

Hi!

$picture = getimagesize ($_FILES['bild']['tmp_name']);
wenn aber kein Bild in meiner Var drin ist, bekomme ich eine Fehlermeldung. ich habe schon versucht es mit isset abzufangen, aber es klappt nicht. Kann mir jemand sagen wie ich die Fehlermeldung abfange?

Da ist kein Bild sondern der Pfad zu einer Datei drin. Wenn was anderes (außer NULL) drin ist, ergibt isset() immer true, ist also keine geeignete Test-Funktion.

Frag erst nach, ob der Upload von PHP als fehlerfrei erkannt wurde.
Wenn genau ein File hochgeladen wurde, ist

$_FILES['bild']['error']) === UPLOAD_ERR_OK

Besser wäre is_uploaded_file() zu befragen.

Früher hatte (nach meinen Erinnerungen) die Funktion auch bei ungültigen Bilddateien einen Fehler geworfen, was aber wohl nicht mehr der Fall ist. Da half nur der Einsatz des @-Operators. Auftretende Fehler erkennt man programmtechnisch sowieso am Rückgabewert der Funktion.

Lo!