Guten Tag, alle
Ich bin Anfänger für PHP und hab ein Problem von einem kleinen Programm, das ich geschrieben hab. Ich weiß nicht warum eine lokale Bild-Datei nicht hochgeladen wurde und auch keine Fehlermeldung gezeigt hat..Kann mir jemand helfen****? Danke!
Das Programm sieht wie folgendes aus:
Ich bin Anfänger für PHP und hab ein Problem von einem kleinen Programm, das ich geschrieben hab. Ich weiß nicht warum eine lokale Bild-Datei nicht hochgeladen wurde und auch keine Fehlermeldung gezeigt hat..Kann mir jemand helfen****? Danke!
Das Programm sieht wie folgendes aus:
HTML:
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
<title>datei_upload_bild</title>
</head>
<body>
<form action="<?php echo htmlspecialchars($_SERVER["PHP_SELF"]); ?>" method="post" enctype="multipart/form-data">
Bild-Datei:<br />
<input type="hidden" name="MAX_FILE_SIZE" value="300000" />
<input type="file" name="datei" /><br />
<input type="submit" name="sbm" value="Hochladen" />
</form>
<?php
if(isset($_POST["sbm"])){
if(isset($_POST["datei"]) AND (!$_FILES["datei"]["error"]) AND ($_FILES["datei"]["size"] < 300000)){
$bildinfo = getimagesize($_FILES["datei"]["tmp_name"]); //Größe der Bilddatei + Eigenschaft auslesen und Prüfung der Gültigkeit der Bild-Datei
//echo "$bildinfo <br/>";
if($bildinfo == false){
//echo "Das ist kein Bild.<br />";
die("Kein Bild");
}else{
$mime = $bildinfo["mime"];
$mimetype = array(
"image/jpeg"=> "jpg",
"image/png"=> "png",
"image/gif"=> "gif",
"image/bmp"=> "bmp",
"image/psd"=> "psd",
"image/tiff"=> "tiff",
"image/swf"=> "swf"
);
if(!isset($mimetype[$mime])){
die("Nicht das richtige Format.");
}else{
$endung = $mimetype[$mime];
}
//basename : zeigt den volständigen Pfad einer Datei, gibt Datei-Name zurück wenn basename($path, suffix), wird der Suffix vom Name entfernt werden.
$neue_name = basename($_FILES["datei"]["name"]);
//alle Endungen durch $endung ersetzen.
$neue_name = preg_replace("/\.(jpe?g|gif|png|bmp|psd|tiff|swf)$/i", "", $neue_name);
$neue_name = preg_replace("/[^a-zA-Z0-9_-]/", "", $neue_name);
$neue_name .= ".$endung";
$ziel = "upload/$neue_name";
while(file_exists($ziel)){
$neue_name = "kopie_$neuen_name";
$ziel = "upload/$neue_name";
}
//Prüft ob der Übertragung erfolgreich ist.
if(move_uploaded_file($_FILES["datei"]["tmp_name"], $ziel)){
echo "Dateiupload hat geklappt.<br/>";
}else{
echo "Dateiupload hat lieder nicht geklappt...<br/>";
}
}
}
echo "why? <br/>";
echo $_FILES["datei"]["error"] . "<br />";
}
?>
</body>
</html>