Wo steckt in diesem Upload-Script der Fehler?
-
<?php
function list_dir(dirname) { if(dirname[strlen(dirname)-1]!='/') dirname.='/';
static handle=opendir(file = readdir(handle)) { if(file=='.'||dirname.dirname.result_array[]=file;
}closedir($handle);
return $result_array;
}user->username."_pics/".$apa->name."/");
if(_POST['uploadpics']) { if(count(files) >= 4)
{
echo "Ihr max. Uploadvolumen wurde erreicht. Sie können keine Bilder mehr uploaden.";
}
else if(count(files) < 4) { for(i = 1; _FILES); i++) { pic = "picture".tempname = \_FILES[pic]['tmp_name'];
$name = _FILES[pic]['name'];
$type = _FILES[pic]['type'];
$size = _FILES[pic]['size'];if($type != "image/gif" && type != "image/pjpeg") { err[] = "nur gif und jpeg Dateien dürfen hochgeladen werden.";
}if(size > "15000") { err[] = "Die Datei welche du hochladen willst, ist zu gross!<br>Maximale Dateigrosse beträgt 15 KB!";
}If(empty(err)) { copy(tempname, "pictures/".apa->name."/".$name);
}
else
{
foreach($err as error<br>";
}
}
}
}Es wird zwar immer angegeben der Upload sei erfolgreich, aber die Bilder sind nicht vorhanden? Müssen die Rechte des Ordners, in welchen ich die Bilder kopieren möchte auf 777 gesetzt sein oder reicht 755 auch aus?
Ich danke euch für eure Hilfe!
MfGTobsen
-
Schreibrechte Öffentlich müßte reichen... 755 (Glaube das war der Code, weiß net genau)
-
Das ist ka krausam. Wenn du keinen Code Tag verwendest hilft dir keiner.
-
Original erstellt von <Gast>:
Das ist ka krausam. Wenn du keinen Code Tag verwendest hilft dir keiner.Erstens das und zweites, gib uns bitte mal den ganzen Quelltext, wie ich gesehen habe, ist die Value tempname, "pictures/".apa->name."/".$name);
ist es klar, dass er nichts kopiert, da der pfad dann so aussehen würde, wenn $apa leer ist:pictures/username//name
das ist kein gültiger pfad, also weiß apache nicht wohin damit, oder was verwendet dein server?
-
Vielleicht hilft dir ein kleiner auszug aus meiner Exchange weiter:
$upfile_name = strtolower($upfile_name); $filepath = $DOCUMENT_ROOT."/downloads/"; $MAX_FILE_SIZE = 2097152; $des_file= strtolower($filepath.$_FILES['upfile']); if (!file_exists($des_file)) { if(ereg("(\.jpg)|(\.jpeg)|(\.gif)|(\.png)|(\.3ds)|(\.obj)|$", $des_file)) { if (move_uploaded_file($upfile, $des_file)) { echo "<font color=green>Datei gespeichert</font>"; } else { echo "<font color=red><B>Upload fehlgeschlagen!</font></B><BR>"; echo "Dies kann folgende Gründe haben:"; echo "<hr>"; echo "1. Dateifehler<br>"; echo "2. Dateilimite zu gross<br>"; echo "3. Skriptfehler<br>"; echo "4. Unerlaubte Zeichen im Dateinamen<br>"; echo "<hr>"; echo "<a href=\"exchange.php\">Zurück...</a>"; exit; } } else { echo "<b><font color=\"red\">Diese Art von Datei ist nicht erlaubt!! Transaktion abgebrochen!</font></b><hr>"; echo "<br><b>[Erlaubte Dateitypen]</b><hr>"; echo ".jpg, "; echo ".jpeg, "; echo ".gif, "; echo ".png, "; echo ".3ds, "; echo ".obj, "; echo "<hr>"; echo "Der Webmaster übernimmt auf allfällige Fehler, Systemabstürze, Viren oder sonstige Schäden,<br>die durch Programme der DataExchange enstehen könnten, <b>keine Haftung!</B>"; echo "<hr>"; echo"<a href=\"exchange.php\">Zurück...</a>"; exit; } } } }