Upload funktioniert nicht

hallo zusammen,

ich habe einen linuxserver mit php5 und php eingestellt auf fast-cgi.

nun wollte ich ein uploadscript schreiben, welches ein ordner leert und dann ein neues bild hochlädt beim betätigen von einem button.
doch irgendwie macht es nichts.
es erscheint das ich die berechtigungen überprüfen soll. doch ich hab es auch mit 777 probiert.

hier das script:

//Bilderupload
$upload_verzeichnis = $_SERVER[‚SCRIPT_FILENAME‘];
//echo $upload_verzeichnis; // = Beispiel:/srv/www/vhosts/meine-domain/httpdocs/seiten/bildupload.php;
$dir = „bilder/“;//Nur zum chmod-test
$upload_dir ="/seiten/".$dir; // Verzeichnis „/verzeichnis/“
$upload = $_POST[„upload“];
$file = $_POST[„file“];

global $_FILES, $upload_dir, $_POST;

//Überprüfung Rechte 755 ist normal
if(isset ($upload)){
if (is_dir($dir)) {
if ($dh = opendir($dir)) {
//echo "Das Verzeichnis „.$dir.“ ist vorhanden und hat die Dateirechte „.substr(decoct(fileperms($dir)),2);
closedir($dh);
}
}
//Ordner leeren
$zuLeerendesVerzeichnis = $dir;
$handle=opendir($zuLeerendesVerzeichnis);
while ($file_delete = readdir ($handle)) {
if ($file_delete != „.“ && $file_delete != „…“) {
unlink ($file_delete);
$msg=“ Alte Dateien wurden gelöscht. ";
}
}
closedir($handle);

//Datei eingegeben?
if (strlen ($file) == 0)
{
$msg=" Bitte geben Sie eine Datei an. ";
}
else{
$msg1= „- „.$file.““;
}

if (move_uploaded_file($_FILES[‚file‘][‚tmp_name‘], $upload_dir. $_FILES[‚file‘][‚name‘])){
$msg=" Die folgenden Dateien sind hochladen worden
$msg1";
}
else{
$msg=" Die vorgewählten Dateien sind nicht hochladen worden.
Kontrollieren Sie den Uploadordner: $upload_dir und seine Einstellungen für den Zugriff. ";
}
}
echo $msg;

//Ausgabe Formular
echo "

Hier das Titelbild eingeben

";

kann mir jemand helfen? danke im voraus

mario

ergänzung:

habe die msg geändert:

//Ordner leeren
$zuLeerendesVerzeichnis = $dir;
$handle=opendir($zuLeerendesVerzeichnis);
while ($file_delete = readdir ($handle)) {
if ($file_delete != „.“ && $file_delete != „…“) {
unlink ($file_delete);
$msg1=" Alte Dateien wurden gelöscht. ";
}
}
closedir($handle);

//Datei eingegeben?
if (strlen ($file) == 0)
{
$msg2=" Bitte geben Sie eine Datei an. „;
}
elseif (move_uploaded_file($_FILES[‚file‘][‚tmp_name‘], $upload_dir. $_FILES[‚file‘][‚name‘])){
$msg3= „- „.$file.“
„;
$msg4=“ Die folgenden Dateien sind hochladen worden
$msg3“;
}
else{
$msg5=“ Die vorgewählten Dateien sind nicht hochladen worden.
Kontrollieren Sie den Uploadordner: $upload_dir und seine Einstellungen für den Zugriff. ";
}
}
echo $msg1.$msg2.$msg3.$msg4.$msg5;

dabei kam raus das kein dateiname per post übergeben wird.

laut php.ini ist jedoch file_upload on

hat sich erledigt…

auf dem server war der temp ordner auf rechte 0640 gestellt. hab außerdem noch einiges geändert und es geht jetzt alles, vielleicht kann es ja jemand gebrauchen. das script löscht die alten dateien im ordner „bilder“ und lädt ein neues hoch.

<?php //Bilderupload
$upload\_file = $\_SERVER['SCRIPT\_FILENAME']; //echo $upload\_file;//verzeichnis: /srv/www/vhosts/meine-domain/httpdocs/seiten/ $dir= "bilder/"; $upload\_ordner = "/srv/www/vhosts/meine-domain/httpdocs/seiten/".$dir; //echo $upload\_ordner; $UPLOAD\_PATH = $upload\_ordner; $Upload = $\_POST["Upload"]; //print\_r($\_FILES); //Auswertung ob Wert übergeben wurde global $UPLOAD\_PATH, $\_POST, $\_FILES; $name = $\_FILES["File"]["name"]; $tmp = $\_FILES["File"]["tmp\_name"]; if(isset ($Upload)){ //Ordner leeren $zuLeerendesVerzeichnis = $dir; $handle=opendir($zuLeerendesVerzeichnis); while ($file\_delete = readdir ($handle)) { if ($file\_delete != "." && $file\_delete != "..") { if( chmod ($dir.$file\_delete, 0755)){ //echo"chmode bei $file\_delete geglückt"; } if(unlink($dir.$file\_delete)){ echo" $file\_delete wurde gelöscht."; } } } closedir($handle); if (is\_uploaded\_file ($tmp)) $buff = $name; if (strlen ($buff) == 0) { echo" Bitte geben Sie eine Datei an. "; } elseif (@move\_uploaded\_file($tmp, $UPLOAD\_PATH.$name)){ echo" Die folgenden Dateien sind hochladen worden: - $buff "; } else{" Einige von vorgewählten Dateien sind nicht hochladen worden. Kontrollieren Sie den Uploadordner: $UPLOAD\_PATH and seine Einstellungen für den Zugriff. "; } } echo" Hier die Datei eingeben eingeben "; ?\>