Bilder Upload aber nur für gif - jpg geht nicht

chrisbhv

Mitglied
Hallo,

Ich habe im internet ein Tutorial gefunden, welches den GIF upload beschreibt.

Ich wollte es gerne bei mir in meiner Bildgalerie mit einbinden, aber dazu muss er auch jpg uploaden können.

folgendes Script:
PHP:
<HTML><BODY>

<form name="form1" method="post" action="" enctype="multipart/form-data"> 
<input type="file" name="imagefile"> 

<input type="submit" name="Submit" value="Submit"> 
<?

if(isset( $Submit )) 
{ 
//If the Submitbutton was pressed do: 


// Abfrage für Gif
if ($_FILES['imagefile']['type'] == "image/gif"){ 
	copy ($_FILES['imagefile']['tmp_name'], "bildgalerie/".$_FILES['imagefile']['name']) 
    	or die ("Could not copy"); 
	echo ""; 
        echo "Name: ".$_FILES['imagefile']['name'].""; 
        echo "Size: ".$_FILES['imagefile']['size'].""; 
        echo "Type: ".$_FILES['imagefile']['type'].""; 
        echo "Copy Done...."; 
} 
else { 
            echo ""; 
            echo "Could Not Copy, Wrong Filetype (".$_FILES['imagefile']['name'].")"; 
} 



// Abfrage für jpg
if ($_FILES['imagefile']['type'] == "image/jpg"){ 
	copy ($_FILES['imagefile']['tmp_name'], "bildgalerie/".$_FILES['imagefile']['name']) 
    	or die ("Could not copy"); 
	echo ""; 
        echo "Name: ".$_FILES['imagefile']['name'].""; 
        echo "Size: ".$_FILES['imagefile']['size'].""; 
        echo "Type: ".$_FILES['imagefile']['type'].""; 
        echo "Copy Done...."; 
} 
else { 
            echo ""; 
            echo "Could Not Copy, Wrong Filetype (".$_FILES['imagefile']['name'].")"; 
} 
}		
?> </form>

</BODY></HTML>

Ich habe mir gedacht, dass ich in dieser Zeile:
if ($_FILES['imagefile']['type'] == "image/jpg"){
nur jpg eintragen muss, und dann würde es laufen, jedoch klappt es nicht.
Da ich mittlerweile schon zig stunden damit verbracht habe - weiß ich einfach nicht weiter.

Vielleicht hat jemand eine Idee, ich hoffe es doch sehr.

Herzlichen Dank

Christian
 
hmmmm - Also ich habe mir den link bezüglich GetImageSize() mal durchgelesen, habe aber irgendwie keine Vorstellung davon, wie ich das bei mir einbinden soll.

Ich packs grad net....

Bitte um hilfe.
Danke
chris
 
php.net hat gesagt.:
Returns an array with 4 elements. Index 0 contains the width of the image in pixels. Index 1 contains the height. Index 2 is a flag indicating the type of the image: 1 = GIF, 2 = JPG, 3 = PNG, 4 = SWF, 5 = PSD, 6 = BMP, 7 = TIFF(intel byte order), 8 = TIFF(motorola byte order), 9 = JPC, 10 = JP2, 11 = JPX, 12 = JB2, 13 = SWC, 14 = IFF, 15 = WBMP, 16 = XBM.

Das heisst - getimagesize, gibt als dritten Wert, nach Breite und Hoehe, den Typ des Bildes zurueck. Heisst konkret, falls 2 zurueckgegeben wird, es sich definitiv um ein JPG handelt.
PHP:
$image = getimagesize($_FILES['imagefile']['tmp_name']);
if($image[2] == 2) {
    echo "Du bist ein JPG";
} else {
    echo "Du bist kein JPG";
}

Cheers!
 
Hi,
Danke erstmal für deinen Eintrag, er hat mir schon sehr viel geholfen...

jedoch habe ich das Script jetzt so verändert :
PHP:
<?
$image = getimagesize($_FILES['imagefile']['tmp_name']); 

if($image[2] == 2) { 
    echo "Du bist ein JPG";
	
	copy ($_FILES['imagefile']['tmp_name'], "bildgalerie/".$_FILES['imagefile']['name']) 
    	or die ("Could not copy"); 
	echo ""; 
        echo "Name: ".$_FILES['imagefile']['name'].""; 
        echo "Size: ".$_FILES['imagefile']['size'].""; 
        echo "Type: ".$_FILES['imagefile']['type'].""; 
        echo "Copy Done...."; 	 


} else { 
    echo "Du bist kein JPG"; 
} 

}
?>

Er zeigt mir an, das es ein JPG ist, auch die Daten zeigt er mir dazu - jedoch lädt er das bild nicht in den Ordner bildgalerie hoch - und ich kann es auch nirgends auf dem Server finden....
 
Zurück