So Leute Ich bins wieder mal...
Folgende frage:
Was muss ich machen um dieses Skript zum laufen zu bringen so wie es die Überschrift sagt!
Erklärung:
Ich habe mir was gebastelt und zwar brauche ich es für eine Seite...
Ein user möchte seine grossen und kleinen Bilder ändern. Dafür muss ich zuerst den Ordner aus der DB ausgeben (angegeben mit timestamp)
Das mach ich so (mit strsub um das ganze aufs wesentliche zu kürzen)
PHP-Code:
$str_kl = $row_news_edit['kl_bild'];
$str_kl2 = substr($str_kl,12,10);
echo $str_kl2;
$str_gr = $row_news_edit['gr_bild'];
$str_gr2 = substr ($str_gr,12,10);
echo $str_gr2;
Das funktioniert einwandfrei...
Wie sicher allen bekannt ist kann rmdir keine Verzeichnisse löschen in dem noch was enthalten ist deshalb probieren wir esmit unlink
PHP-Code:
$temp = ('upload/news/'.$str_kl.'/klein/');
$temp2 = ('upload/news/'.$str_gr.'/gross/');
unlink($temp);
unlink($temp2);
zur Erklärung klein und gross am ende des strings sind die Ordner die er mir immer automatisch macht!
und zwar hier:
PHP-Code:
if ((isset($HTTP_POST_VARS["MM_insert"])) && ($HTTP_POST_VARS["MM_insert"] == "form1") && ($_FILES['kl_bild']['name'] != "")) {
$ordner = time();
mkdir('upload/news/'.$ordner.'/');
chmod('upload/news/'.$ordner.'/',0777);
mkdir('upload/news/'.$ordner.'/klein/');
chmod('upload/news/'.$ordner.'/klein/',0777);
move_uploaded_file($_FILES['kl_bild']['tmp_name'], "upload/news/".$ordner."/klein/".$_FILES['kl_bild']['name'].""); //datei vom tmp-verz ins projekte verz kopieren
$filename = $ordner.'/klein/'.$_FILES['kl_bild']['name']; // dateinamen setzten
chmod("upload/news/$filename", 0777); // zugriffsrechte für die datei setzten
$link_kl = "upload/news/".$ordner."/klein/".$_FILES['kl_bild']['name'];
}
if ((isset($HTTP_POST_VARS["MM_insert"])) && ($HTTP_POST_VARS["MM_insert"] == "form1") && ($_FILES['gr_bild']['name'] != "")) {
$ordner = time();
@mkdir('upload/news/'.$ordner.'/');
chmod('upload/news/'.$ordner.'/',0777);
mkdir('upload/news/'.$ordner.'/gross/');
chmod('upload/news/'.$ordner.'/gross/',0777);
move_uploaded_file($_FILES['gr_bild']['tmp_name'], "upload/news/".$ordner."/gross/".$_FILES['gr_bild']['name'].""); //datei vom tmp-verz ins projekte verz kopieren
$filename = $ordner.'/gross/'.$_FILES['gr_bild']['name']; // dateinamen setzten
chmod("upload/news/$filename", 0777); // zugriffsrechte für die datei setzten
$link_gr = "upload/news/".$ordner."/gross/".$_FILES['gr_bild']['name'];
aber dieses gewisse unlink macht er mir nicht kA warum
anschließend würde bei mir kommen:
PHP-Code:
rmdir('upload/news/'.$str_kl.'/');
rmdir('upload/news/'.$str_gr.'/');
und zum neu speichern in diesem Ordner wieder:
PHP-Code:
if ((isset($HTTP_POST_VARS["MM_insert"])) && ($HTTP_POST_VARS["MM_insert"] == "form1") && ($_FILES['kl_bild']['name'] != "")) {
$ordner = time();
mkdir('upload/news/'.$str_kl.'/');
chmod('upload/news/'.$str_kl.'/',0777);
mkdir('upload/news/'.$str_kl.'/klein/');
chmod('upload/news/'.$str_kl.'/klein/',0777);
move_uploaded_file($_FILES['kl_bild']['tmp_name'], "upload/news/".$str_kl."/klein/".$_FILES['kl_bild']['name'].""); //datei vom tmp-verz ins projekte verz kopieren
$filename = $str_kl.'/klein/'.$_FILES['kl_bild']['name']; // dateinamen setzten
chmod("upload/news/$filename", 0777); // zugriffsrechte für die datei setzten
$link_kl = "upload/news/".$str_kl."/klein/".$_FILES['kl_bild']['name'];
}
if ((isset($HTTP_POST_VARS["MM_insert"])) && ($HTTP_POST_VARS["MM_insert"] == "form1") && ($_FILES['gr_bild']['name'] != "")) {
$ordner = time();
@mkdir('upload/news/'.$str_gr.'/');
chmod('upload/news/'.$str_gr.'/',0777);
mkdir('upload/news/'.$str_gr.'/gross/');
chmod('upload/news/'.$str_gr.'/gross/',0777);
move_uploaded_file($_FILES['gr_bild']['tmp_name'], "upload/news/".$str_gr."/gross/".$_FILES['gr_bild']['name'].""); //datei vom tmp-verz ins projekte verz kopieren
$filename = $str_gr.'/gross/'.$_FILES['gr_bild']['name']; // dateinamen setzten
chmod("upload/news/$filename", 0777); // zugriffsrechte für die datei setzten
$link_gr = "upload/news/".$str_gr."/gross/".$_FILES['gr_bild']['name'];
und zum schluss:
PHP-Code:
$updateSQL = sprintf("UPDATE tbl_news SET headline=%s, kurztext=%s, langtext=%s, beginn_datum=%s, ende_datum=%s, kategorie=%s, kl_bild=%s, gr_bild=%s WHERE id=%s",
GetSQLValueString($_POST['headline'], "text"),
GetSQLValueString($_POST['kurztext'], "text"),
GetSQLValueString($_POST['langtext'], "text"),
$startdate,
$enddate,
GetSQLValueString($_POST['kategorie'], "text"),
$link_kl,
$link_gr,
GetSQLValueString($_POST['id'], "int"));
kann mir da jemand helfen oder sagen was ich bei unlink falsch mache...
error_reporting(E_ALL)
hab ich auch eingebaut der ruft und zwar:
Notice: Undefined variable: row_news_edit in /srv/www/htdocs/klein/sites/news_edit.php on line 47
Notice: Undefined variable: row_news_edit in /srv/www/htdocs/klein/sites/news_edit.php on line 51
Warning: unlink(upload/news//klein/): No such file or directory in /srv/www/htdocs/klein/sites/news_edit.php on line 59
Warning: unlink(upload/news//gross/): No such file or directory in /srv/www/htdocs/klein/sites/news_edit.php on line 60
Warning: rmdir(upload/news//): Directory not empty in /srv/www/htdocs/klein/sites/news_edit.php on line 62
Warning: rmdir(upload/news//): Directory not empty in /srv/www/htdocs/klein/sites/news_edit.php on line 63
wär toll wenn wer was wüsste...
mfg
garrik