- Registriert
- 02.02.16
- Beiträge
- 85
Hallo Community,
ich habe im Internet ein Datei Upload Script gefunden und wollte das ganze mal ausprobieren doch es kommt leider immer wieder in einer Zeile zu einem Fehler, obwohl ich das ganze Script nur kopiert habe und nicht mal was daran verändert habe.
Hier das Script:
Das Formular zum Upload lasse ich jetzt einfach mal weg weil das auch eine externe Datei ist und glaube ich nicht wirklich ne Rolle spielt bei meinem Problem. Nun ja es wird wie gesagt immer der selbe Fehler ausgespuckt und zwar dieser hier:
Warning: move_uploaded_file(upload/arno1.jpg): failed to open stream: No such file or directory in /Library/WebServer/Documents/upload.php on line 41
Warning: move_uploaded_file(): Unable to move '/private/var/tmp/phpZOIFzd' to 'upload/arno1.jpg' in /Library/WebServer/Documents/upload.php on line 41
Bild erfolgreich hochgeladen: upload/arno1.jpg
Ich verstehe den Fehler nicht und weiß leider nicht warum das ganze nicht so funktioniert wie ich mir das vorstelle :/
Wäre super wenn einer von euch ne Ahnung hat und mir erklären könnte was hier schief läuft und wie ich das Problem löse
ich habe im Internet ein Datei Upload Script gefunden und wollte das ganze mal ausprobieren doch es kommt leider immer wieder in einer Zeile zu einem Fehler, obwohl ich das ganze Script nur kopiert habe und nicht mal was daran verändert habe.
Hier das Script:
Code:
<?php
$upload_folder = 'upload/'; //Das Upload-Verzeichnis
$filename = pathinfo($_FILES['datei']['name'], PATHINFO_FILENAME);
$extension = strtolower(pathinfo($_FILES['datei']['name'], PATHINFO_EXTENSION));
//Überprüfung der Dateiendung
$allowed_extensions = array('png', 'jpg', 'jpeg', 'gif');
if(!in_array($extension, $allowed_extensions)) {
die("Ungültige Dateiendung. Nur png, jpg, jpeg und gif-Dateien sind erlaubt");
}
//Überprüfung der Dateigröße
$max_size = 500*1024; //500 KB
if($_FILES['datei']['size'] > $max_size) {
die("Bitte keine Dateien größer 500kb hochladen");
}
//Überprüfung dass das Bild keine Fehler enthält
if(function_exists('exif_imagetype')) { //Die exif_imagetype-Funktion erfordert die exif-Erweiterung auf dem Server
$allowed_types = array(IMAGETYPE_PNG, IMAGETYPE_JPEG, IMAGETYPE_GIF);
$detected_type = exif_imagetype($_FILES['datei']['tmp_name']);
if(!in_array($detected_type, $allowed_types)) {
die("Nur der Upload von Bilddateien ist gestattet");
}
}
//Pfad zum Upload
$new_path = $upload_folder.$filename.'.'.$extension;
//Neuer Dateiname falls die Datei bereits existiert
if(file_exists($new_path)) { //Falls Datei existiert, hänge eine Zahl an den Dateinamen
$id = 1;
do {
$new_path = $upload_folder.$filename.'_'.$id.'.'.$extension;
$id++;
} while(file_exists($new_path));
}
//Alles okay, verschiebe Datei an neuen Pfad
move_uploaded_file($_FILES['datei']['tmp_name'], $new_path);
echo 'Bild erfolgreich hochgeladen: <a href="'.$new_path.'">'.$new_path.'</a>';
?>
Das Formular zum Upload lasse ich jetzt einfach mal weg weil das auch eine externe Datei ist und glaube ich nicht wirklich ne Rolle spielt bei meinem Problem. Nun ja es wird wie gesagt immer der selbe Fehler ausgespuckt und zwar dieser hier:
Warning: move_uploaded_file(upload/arno1.jpg): failed to open stream: No such file or directory in /Library/WebServer/Documents/upload.php on line 41
Warning: move_uploaded_file(): Unable to move '/private/var/tmp/phpZOIFzd' to 'upload/arno1.jpg' in /Library/WebServer/Documents/upload.php on line 41
Bild erfolgreich hochgeladen: upload/arno1.jpg
Ich verstehe den Fehler nicht und weiß leider nicht warum das ganze nicht so funktioniert wie ich mir das vorstelle :/
Wäre super wenn einer von euch ne Ahnung hat und mir erklären könnte was hier schief läuft und wie ich das Problem löse
