Forum


Suchen Forum RSS RSS2 SuchenSuchen Mitgliederliste Mitgliederliste RegistrierenRegistrieren ProfilProfil Login


Info: Der Forenbetrieb wurde leider eingestellt.

Gehe zu: » Forum » PHP und MySQL » Fehler bei der Formatüberpfüfung

Seite: 1

Thema
Autor
Fehler bei der Formatüberpfüfung
Beitrag von tron am: 05.08.2009 09:36:04

Bei folgendem Code bekomme ich im Internet Explorer beim Typ "jpg" und "png" eine Fehlermeldung. Im Firefox funktioniert es hingegen prima. Ich finde den Fehler einfach nicht:

PHP-Code:
<?   $datum = date('Y'); echo<<<EOT   <form action="?p=1&act=1_up" method="POST" enctype="multipart/form-data" id="form" method="post" onsubmit="a=document.getElementById('form').style;a.display='none';b=document.getElementById('part2').style;b.display='inline';" style="display: inline;"> <font size="-2">Ein Bild uploaden (max. $maxxx KB - Erlaubte Formate: *jpg *jpeg *gif *png *bmp)</font><br /> <input type="file" name="image" size="60"><br /> <input type=checkbox name='agb' value="ok"><font size="-1"> Ich habe die <a href="javascript:NewWindow('agb.php','mypopup','450','500','custom','front');">AGBs</a> gelesen, und bin damit einverstanden</font><br /><br /> <input type="submit" name="sent" class="input" value="Bild jetzt hochladen"> </form> <div align=center id="part2" style="display: none;"> <center> <br /> <font color=#007F00>Bild wird hochgeladen. Bitte haben Sie etwas Geduld ...</font> <br /><br /> <img src="./images/preloader.gif" border=0 width=100 height=100> </center> </div> <br /><br /> EOT;   $userverz = "./pics"; if($_POST['sent']) { $name23=uniqid(''); // Bild umbenennen   // Bildgroesse in kb umrechnen $size = $_FILES['image']['size']; $size = round($size / 1024, 2); $size1 = $size;   if($size>$maxxx) {$fehler ="<br /><img src='./images/zeichen.png' border=0 width=100 height=100><br /><br />Die Datei ist zu gross<br />";} if(!($_FILES[image][type] == 'image/jpeg' OR $_FILES[image][type] == 'image/gif' OR $_FILES[image][type] == 'image/png' OR $_FILES[image][type] == 'image/bmp')) {$fehler.="<br /><img src='./images/zeichen.png' border=0 width=100 height=100><br /><br />Falsche Dateiendung<br />"; } if(!($HTTP_POST_VARS['agb']=="ok")) {$fehler.="<br /><br /><img src='./images/zeichen.png' border=0 width=100 height=100><br /><br />Du musst die AGBs akzeptieren!!<br />"; } if(!$fehler) { switch($_FILES[image][type]) { case 'image/jpeg'; $name = "$name23.jpg"; break; case 'image/gif'; $name = "$name23.gif"; break; case 'image/png'; $name = "$name23.png"; break; case 'image/bmp'; $name = "$name23.bmp"; break; } $name = $userverz."/".$name;


Wenn ich diesen Teil weglasse, dann funktioniert die Sache auch im Internet Explorer, was aber nicht Sinn der Sache ist, dass die Bildformate ungeprüft hochgeladen werden:

PHP-Code:
if(!($_FILES[image][type] == 'image/jpeg' OR $_FILES[image][type] == 'image/gif' OR $_FILES[image][type] == 'image/png' OR $_FILES[image][type] == 'image/bmp')) {$fehler.="<br /><img src='./images/zeichen.png' border=0 width=100 height=100><br /><br />Falsche Dateiendung<br />"; }


Hat jemand eine Ahnung, warum der Code im Firefox funktioniert und im IE7/8 nur gif und bmp akzeptiert, jpg und png jedoch nicht


tron
Benutzer


Beiträge: 25
OFF PN Schicken Homepage
AW: Fehler bei der Formatüberpfüfung
Beitrag von N0o0B am: 13.08.2009 08:36:42

Hallo tron,

im IE besteht schon seit jahren ein Problem. Der mime-type PNG wurde falsch interpretiert bei dem Internet exe. "image/x-png" füge das noch zu deinen code ein dann funktioniert das mit png.

mit dem jpg füge diesen code ein "image/jpg". Bei mir funktioniert es so

_________________
Mit freundlichen Grüßen Sven E.

N0o0B
Benutzer

Beiträge: 2
OFF PN Schicken
AW: Fehler bei der Formatüberpfüfung
Beitrag von tron am: 15.08.2009 10:14:20

Ja, das war`s. Danke für den Tipp Ist wieder mal typisch Microsoft


tron
Benutzer


Beiträge: 25
OFF PN Schicken Homepage

Seite: 1



Statistik
Statistik
Es wurden insgesamt 3838 Beiträge geschrieben.
Wir haben 11066 registrierte Mitglieder.
Der neueste Benutzer ist laustralianorth - Forum Beta³ - Bug melden