Was is daran falsch?
Frank Stabenau
- php
0 Cheatah0 Uwe0 Axel Richter
Hilfeee!
Was is daran falsch:
if($type != "image/gif" && $type != "image/jpeg") {
$err[] = "nur Bild-Dateien dürfen hochgeladen werden.";
}
ich bekomme immer die Fehlermeldung, wenn ich ein JPG hochladenmöchte... GIF geht...
Wisst ihr bitte Rat?
Frank
Hi,
Was is daran falsch:
Du gehst davon aus, dass der Client den (aus Deiner Sicht!) korrekten MIME-Type übermittelt. Das ist wie 'ne EC-Karte ohne PIN-Abfrage.
ich bekomme immer die Fehlermeldung, wenn ich ein JPG hochladenmöchte...
Und wie lautet in dem Fall der MIME-Type?
Cheatah
Hilfeee!
Was is daran falsch:
if($type != "image/gif" && $type != "image/jpeg") {
$err[] = "nur Bild-Dateien dürfen hochgeladen werden.";
}ich bekomme immer die Fehlermeldung, wenn ich ein JPG hochladenmöchte... GIF geht...
Wisst ihr bitte Rat?
Frank
Gib doch mal $type aus. Wahrscheinlich steht da "image/pjpeg". Das Problem hatte ich auch schon mal, da scheint es verschiedene Mime-Typen zu geben. Im Zweifelsfall helfen da ein paar Regular Expressions.
Gib doch mal $type aus. Wahrscheinlich steht da "image/pjpeg". Das Problem hatte ich auch schon mal, da scheint es verschiedene Mime-Typen zu geben. Im Zweifelsfall helfen da ein paar Regular Expressions.
Stimmt, er gibt tatsächlich image/pjpeg aus.... Was kann ich dagegen tun, bzx, was sind Regular Expressions?
Frank
Hi,
Was kann ich dagegen tun,
verlasse Dich *niemals* auf das, was Dir ein Client sagt. Der nächste schickt Dir 'ne .exe als image/gif.
was sind Regular Expressions?
Ein komplexes und mächtiges Thema für sich. Beschäftige Dich anhand der PHP-Doku damit.
Cheatah
Hallo,
Hilfeee!
Waldfee kenn ich ja nun mittlerweile. Was ist eine Hilfeee?
Was is daran falsch:
Nichts!
if($type != "image/gif" && $type != "image/jpeg") {
$err[] = "nur Bild-Dateien dürfen hochgeladen werden.";
}ich bekomme immer die Fehlermeldung, wenn ich ein JPG hochladenmöchte... GIF geht...
Dann ist bei einem JPG die Bedingung $type != "image/gif" && $type != "image/jpeg" erfüllt. In der Variable $type steht also weder "image/gif" noch "image/jpeg".
Wisst ihr bitte Rat?
Nicht, wenn Du nicht sagst, woher die Variable $type ihren Wert bekommt.
viele Grüße
Axel
Nicht, wenn Du nicht sagst, woher die Variable $type ihren Wert bekommt.
$type = $HTTP_POST_FILES['file']['type'];
Hallo,
Nicht, wenn Du nicht sagst, woher die Variable $type ihren Wert bekommt.
$type = $HTTP_POST_FILES['file']['type'];
Bestimme den MIME-Tye des hochgeladenen Bildes mit PHP-Funktionen, speziell mit getimagesize() [PHP 3/4] sowie image_type_to_mime_type() [ab PHP 4.3.0].
getimagesize() gibt ein Array zurueck:
[0] width, [1] height,
[2] type: 1=GIF, 2=JPEG, 3=PNG, 4=SWF, 5=PSD, 6=BMP, 7=TIFF (Intel), 8=TIFF (Motorola), ...
[3] html: width="..." height="..."
image_type_to_mime_type() ergibt den MIME-Type zum jeweiligen numerischen Wert zurueck
Die Anwendung der genannten Funktionen erfolgt hier beim Auswerten von EXIF-Daten: http://webserver.et.fh-merseburg.de/person/meinike/PHP/exif/.
MfG, Thomas