ich eine Website, wo ein Benutzer ein Bild hochladen (die vor perfekt ein paar Tagen gearbeitet, und ich habe nicht einmal etwas zu dem Upload im Zusammenhang ändern)PHP Upload nicht funktioniert, keinen Fehler
Der Eigentümer Datei ist Stellen Sie auf www-data und ich habe auch mit der Erlaubnis 777 versucht, so dass sollte nicht der Grund sein, dass es nicht funktioniert.
enctype/Daten usw. eingestellt sind auch
Dies ist der Code:
switch ($_FILES['upload']['error']) {
case UPLOAD_ERR_OK:
$msg="There is no error, the file uploaded with success.";
break;
case UPLOAD_ERR_INI_SIZE:
$msg="The uploaded file exceeds the upload_max_filesize directive in php.ini.";
break;
case UPLOAD_ERR_FORM_SIZE:
$msg="The uploaded file exceeds the MAX_FILE_SIZE directive that was specified in the HTML form.";
break;
case UPLOAD_ERR_PARTIAL:
$msg="The uploaded file was only partially uploaded.";
break;
case UPLOAD_ERR_NO_FILE:
$msg="No file was uploaded.";
break;
case UPLOAD_ERR_NO_TMP_DIR:
$msg="Missing a temporary folder. Introduced in PHP 5.0.3.";
break;
case UPLOAD_ERR_CANT_WRITE:
$msg="Failed to write file to disk. Introduced in PHP 5.1.0.";
break;
default:
$msg="unknown error with upload";
}
echo("<script>console.log('".$msg."'); </script>");
//process image
if($_FILES['upload']['tmp_name']!=null){
$imgPath="../assets/img/horses/horse".$id.".jpg";
if((bool)getimagesize($_FILES["upload"]["tmp_name"])){
$writeimage = fopen($imgPath, "w");
if(!move_uploaded_file($_FILES["upload"]["tmp_name"], $imgPath)){
echo("<script>console.log('couldn't move img');</script>");
} else{
echo("<script>console.log('image uploaded');</script>");
}
fclose($writeimage);
} else{
echo(" <div class='alert alert-warning' id='notSaved' style='margin-top:20px;'>
Fehler: Die Datei die hochgeladen werden soll, scheint kein Bild zu sein.
</div>");
}
}
Der Ausgang ist
"kein Fehler vorhanden ist, wird die Datei mit Erfolg hochgeladen
Bild hochgeladen.."
aber die Datei ändert sich nicht/erscheint auf dem Server.
Auch ich kann wahrscheinlich die Zeilen löschen $ wrikeimage = fopen ($ imgPath, "w"); und fclose ($ writeImage), kann ich nicht?
Sie haben Ihre Logik bekam drehte sich um: 'move_uploaded_file()' 'kehrt true' auf Erfolg. – jeroen
gemäß Ihrer Wenn-Bedingung, die Sie mit einem Fehler konfrontiert sind, dass, warum es gibt Nachricht Bild hochgeladen nur diese Nachrichten geändert und debuggen –