Portal > Foren > PHP > PHP-Programmierung > Prob. beim Ordner löschen
Antwort
 
Themen-Optionen
Alt 18.03.2006, 12:27 Nach oben    #1
Neuer Benutzer
 
Registriert seit: 18.03.2006
Ort: Bochum
Beiträge: 10
Standard Prob. beim Ordner löschen

Hi, da bin ich mal wieder
http://www.selfphp.de/funktionsrefer...onen/rmdir.php
Als Erklärung zur Funktion

PHP-Code:
$del=rmdir("usr/gal/".$myid."/".$name."/thumb"); // Thumb-Ordner löschen
$del=rmdir("usr/gal/".$myid."/".$name); // Hauptordner löschen
if($del=0){
 die(
"Fehler beim löschen des Ordners vom Server");

Habe die Ordnerberechtigungen für den Ordner auch mal auf 0777 gesetzt, passiert leider nichts, die Pfadangaben sind korrekt und werden auch korrekt ein bzw. ausgelesen, es scheitert nur am löschen selber.

Der zu löschende Ordner ist nicht leer, kann es daran liegen?
Grüße
Tim
X-Unity.de ist offline  
Add Post to del.icio.usBookmark Post in TechnoratiDiesen Beitrag zu Mister Wong hinzufügen!
Mit Zitat antworten
Alt 18.03.2006, 12:33 Nach oben    #2
Benutzer
 
Registriert seit: 17.08.2005
Beiträge: 87
Standard

Zitat:
Zitat von X-Unity.de
Der zu löschende Ordner ist nicht leer, kann es daran liegen?
Handbuch sagt:
Zitat:
Zitat von http://de3.php.net/rmdir
Das Verzeichnis muss leer sein
VolkerK ist offline  
Add Post to del.icio.usBookmark Post in TechnoratiDiesen Beitrag zu Mister Wong hinzufügen!
Mit Zitat antworten
Alt 18.03.2006, 12:36 Nach oben    #3
Corvin Gröning
 
Benutzerbild von Corvin
 
Registriert seit: 19.03.2005
Ort: S-H | Flensburg
Beiträge: 449
Standard

Schau mal hier:
http://www.phpforum.de/archiv_22014_..._anzeigen.html
__________________
Corvin ist offline  
Add Post to del.icio.usBookmark Post in TechnoratiDiesen Beitrag zu Mister Wong hinzufügen!
Mit Zitat antworten
Alt 18.03.2006, 12:37 Nach oben    #4
Neuer Benutzer
 
Registriert seit: 18.03.2006
Ort: Bochum
Beiträge: 10
Standard

Weist du wie ich die Dateien daraus auf einmal löschen kann?
Alle Bilder vorher auslesen und einzelnd löschen lassen´oder gibt es da eine elegantere Lösung?
X-Unity.de ist offline  
Add Post to del.icio.usBookmark Post in TechnoratiDiesen Beitrag zu Mister Wong hinzufügen!
Mit Zitat antworten
Alt 18.03.2006, 12:47 Nach oben    #5
Christian Mühlroth
 
Benutzerbild von Chr!s
 
Registriert seit: 04.09.2005
Ort: Nürnberg
Beiträge: 561
Standard

Zitat:
Zitat von X-Unity.de
Weist du wie ich die Dateien daraus auf einmal löschen kann?
Alle Bilder vorher auslesen und einzelnd löschen lassen´oder gibt es da eine elegantere Lösung?
Zitat:
Zitat von Corvin Gröning
__________________
http://www.ChrisDiary.De
Chr!s ist offline  
Add Post to del.icio.usBookmark Post in TechnoratiDiesen Beitrag zu Mister Wong hinzufügen!
Mit Zitat antworten
Alt 18.03.2006, 12:50 Nach oben    #6
Corvin Gröning
 
Benutzerbild von Corvin
 
Registriert seit: 19.03.2005
Ort: S-H | Flensburg
Beiträge: 449
Standard

Er hat wohl grad geschrieben, als ich auch dabei war
__________________
Corvin ist offline  
Add Post to del.icio.usBookmark Post in TechnoratiDiesen Beitrag zu Mister Wong hinzufügen!
Mit Zitat antworten
Alt 18.03.2006, 13:05 Nach oben    #7
Neuer Benutzer
 
Registriert seit: 18.03.2006
Ort: Bochum
Beiträge: 10
Standard

Stimmt *lol*

Hab das jetzt soweit, er löscht auch ganz nett den Inhalt.. nur leider auch nen Überordner der auf keinen Fall gelöscht werden darf und zwar den mit der User-Id ("myid")

PHP-Code:
function delete($file) {
chmod($file,0777);
if (
is_dir($file)) { 
$handle opendir($file); 
while(
$filename readdir($handle)) { 
  if (
$filename != "." && $filename != "..") { 
   
delete($file."/".$filename);
   }
}
closedir($handle);
rmdir($file);
} else {
unlink($file);
}
}
/*************************************/
$id=$_REQUEST['myid'];
$ordid=$_REQUEST['ordid'];

// Löscht Datenbank Eintrag
$sql2="SELECT * FROM `usrgally` WHERE `id`='$ordid'";
$data2=mysql_query($sql2);
if(
$data2){
    while(
$res2=mysql_fetch_object($data2)){
        
$name=$res2->ordner; }}
if(!
data2){ die("Fehler beim holen des Ordnernamen" .mysql_error()); }
$sql3="DELETE FROM `usrgallery` WHERE `id`='$ordid'";
$data3=mysql_query($sql3);
if(!
data3){ die("Fehler beim löschen aus der Datenbank" .mysql_error()); }

delete("usr/gal/$myid/$name/thumb");
delete("usr/gal/$myid/$name"); 
usr/gal/ bleibt
usr/gal/71

löscht den ganzen Ordner 71 in dem sich auch die anderen User-Gallerien befinden was natürlich mehr oder wneiger tödlich ist ^^

Geändert von X-Unity.de (18.03.2006 um 13:55 Uhr).
X-Unity.de ist offline  
Add Post to del.icio.usBookmark Post in TechnoratiDiesen Beitrag zu Mister Wong hinzufügen!
Mit Zitat antworten
Alt 18.03.2006, 15:17 Nach oben    #8
Benutzer
 
Benutzerbild von Skinwalker
 
Registriert seit: 24.01.2006
Beiträge: 66
Standard

und keinem ist was bei dem code aufgefallen?

PHP-Code:
$del=rmdir("usr/gal/".$myid."/".$name."/thumb"); // Thumb-Ordner löschen
$del=rmdir("usr/gal/".$myid."/".$name); // Hauptordner löschen
if($del=0){
 die(
"Fehler beim löschen des Ordners vom Server");



wie zum beispiel das if($def=0)? sollte das nicht wenn es einen sinn haben soll eher if($def == 0) sein?

naja wobei das ja nur die ausgabe der Meldung beeinflusst und nicht die aktion ansich..
Skinwalker ist offline  
Add Post to del.icio.usBookmark Post in TechnoratiDiesen Beitrag zu Mister Wong hinzufügen!
Mit Zitat antworten
Alt 18.03.2006, 15:59 Nach oben    #9
Neuer Benutzer
 
Registriert seit: 18.03.2006
Ort: Bochum
Beiträge: 10
Standard

Hey, danke für die Info ^^
Nutze jetzt aber den Code über deinem Post und nicht mehr den von dir beschriebenen.. trotzdem thx
X-Unity.de ist offline  
Add Post to del.icio.usBookmark Post in TechnoratiDiesen Beitrag zu Mister Wong hinzufügen!
Mit Zitat antworten
Alt 18.03.2006, 16:10 Nach oben    #10
Dejan Spasic
 
Benutzerbild von dejan_spasic
 
Registriert seit: 05.01.2006
Ort: Düsseldorf
Beiträge: 169
Standard

Probier mal das hier.

PHP-Code:
<?php
try {
    
$id = @$_REQUEST['myid'];
    
$ordid = @$_REQUEST['ordid'];

    
// Löscht Datenbank Eintrag
    
$res mysql_query(sprintf("SELECT ordner FROM `usrgally` WHERE `id`=%d",
                               (int) 
$ordid));

    if (
is_resource($res)) {
        list(
$name) = mysql_fetch_row($res);
        @
mysql_free_result($res);
        
$res null;
    } else {
        throw new 
Exception("Fehler beim holen des Ordnernamen " mysql_error(),
                            
mysql_errno());
    }

    
$res mysql_query(sprintf("DELETE FROM `usrgallery` WHERE `id`=%d",
                               (int) 
$ordid));

    if (!
$res) {
        throw new 
Exception("Fehler beim löschen aus der Datenbank" .
                            
mysql_error(), mysql_errno());
    }

    
$gallery = new RecursiveDirectoryIterator("usr/gal/$myid/$name");
    
$rit = new RecursiveIteratorIterator($gallery,
                                         
RecursiveIteratorIterator::CHILD_FIRST);

    foreach (
$rit  as $file) {
        
//unlink($file->getPathname());
        
printf('%s %s %s'str_repeat(' ' $rit->getDepth()),
                
$file->getPathname() , PHP_EOL);
    }
} catch (
Exception $e) {
    print 
$e->getMessage();
}
?>
__________________
Da wir alle in einem Boot sitzen, ist es gut, dass wir nicht alle auf einer Seite stehen... (mir unbekannt)

Geändert von dejan_spasic (18.03.2006 um 16:26 Uhr).
dejan_spasic ist offline  
Add Post to del.icio.usBookmark Post in TechnoratiDiesen Beitrag zu Mister Wong hinzufügen!
Mit Zitat antworten
Alt 19.03.2006, 10:52 Nach oben    #11
Neuer Benutzer
 
Registriert seit: 18.03.2006
Ort: Bochum
Beiträge: 10
Standard

Parse error: parse error, unexpected '{' in .../show/myprof-edit-gal-deldir.php on line 18

Entspricht bei dir folgender Zeile:
PHP-Code:
try { 
X-Unity.de ist offline  
Add Post to del.icio.usBookmark Post in TechnoratiDiesen Beitrag zu Mister Wong hinzufügen!
Mit Zitat antworten
Alt 19.03.2006, 10:59 Nach oben    #12
Ben
Benjamin Klaile
 
Benutzerbild von Ben
 
Registriert seit: 02.12.2004
Ort: Remagen
Beiträge: 4.471
Standard

Der Code setzt PHP 5 voraus.

Grüße, Ben.

[EDIT]
Ich sehe, dass in Deinem Profil PHP 5.0.x als Version angegeben ist. Sicher?
Ben ist offline  
Add Post to del.icio.usBookmark Post in TechnoratiDiesen Beitrag zu Mister Wong hinzufügen!
Mit Zitat antworten
Alt 19.03.2006, 11:10 Nach oben    #13
Neuer Benutzer
 
Registriert seit: 18.03.2006
Ort: Bochum
Beiträge: 10
Standard

ok, peinlich.. hab ich verklickt -.- *sry*

Wrd mich glaub heut mal dransetzen und das updaten, hat jemand aus dem stehgreif n Link zu ner deutschen Anleitung? ^^

Wenn nicht google ich durch die Weltgeschicht
X-Unity.de ist offline  
Add Post to del.icio.usBookmark Post in TechnoratiDiesen Beitrag zu Mister Wong hinzufügen!
Mit Zitat antworten
Alt 19.03.2006, 11:14 Nach oben    #14
Ben
Benjamin Klaile
 
Benutzerbild von Ben
 
Registriert seit: 02.12.2004
Ort: Remagen
Beiträge: 4.471
Standard

Zitat:
Zitat von X-Unity.de
Wrd mich glaub heut mal dransetzen und das updaten, hat jemand aus dem stehgreif n Link zu ner deutschen Anleitung? ^^
www.xampp.de als Komplettsystem oder vielleicht hier?
http://www.intermitto.net/php/installation/modul/

Kurz gegoogelt. Kenn mich da nicht aus, da ich XAMPP nutze.
Ben ist offline  
Add Post to del.icio.usBookmark Post in TechnoratiDiesen Beitrag zu Mister Wong hinzufügen!
Mit Zitat antworten
Alt 19.03.2006, 11:21 Nach oben    #15
Neuer Benutzer
 
Registriert seit: 18.03.2006
Ort: Bochum
Beiträge: 10
Standard

Danke für die Hilfe, würds dan gern direkt auf meinen Linux-Root im Netz draufhauen... teste eigentlich alles direkt im Netz unter realen Bedingungen.
X-Unity.de ist offline  
Add Post to del.icio.usBookmark Post in TechnoratiDiesen Beitrag zu Mister Wong hinzufügen!
Mit Zitat antworten
Alt 19.03.2006, 11:27 Nach oben    #16
Ben
Benjamin Klaile
 
Benutzerbild von Ben
 
Registriert seit: 02.12.2004
Ort: Remagen
Beiträge: 4.471
Standard

Zitat:
Zitat von X-Unity.de
teste eigentlich alles direkt im Netz unter realen Bedingungen.
Dann mach. Selbst Schuld ^^ :X
Ben ist offline  
Add Post to del.icio.usBookmark Post in TechnoratiDiesen Beitrag zu Mister Wong hinzufügen!
Mit Zitat antworten
Antwort

Lesezeichen


Aktive Benutzer in diesem Thema: 1 (Registrierte Benutzer: 0, Gäste: 1)
 
Themen-Optionen

Forumregeln
Es ist dir nicht erlaubt, neue Themen zu verfassen.
Es ist dir nicht erlaubt, auf Beiträge zu antworten.
Es ist dir nicht erlaubt, Anhänge hochzuladen.
Es ist dir nicht erlaubt, deine Beiträge zu bearbeiten.

BB-Code ist an.
Smileys sind an.
[IMG] Code ist an.
HTML-Code ist aus.
Trackbacks are an
Pingbacks are an
Refbacks are aus

Ähnliche Themen
Thema Autor Forum Antworten Letzter Beitrag
[Thunderbird] eMails werden nur zum löschen markiert MrNiceGuy Plauderecke 5 13.09.2007 18:56
Viele Bilder in einem Ordner => Ladezeitproblem heohni PHP-Programmierung 7 06.10.2006 23:25
[XAMPP] Ordner wird nicht angezeigt Ben Tools, Server, Betriebssysteme 7 16.05.2006 13:24
Ganzen ordner per Stream übertragen mr.no Allgemeine Java-Programmierung 2 10.04.2005 22:46


Alle Zeitangaben in WEZ +2. Es ist jetzt 21:20 Uhr.


Powered by vBulletin® Version 3.7.3 (Deutsch)
Copyright ©2000 - 2008, Jelsoft Enterprises Ltd.
Search Engine Optimization by vBSEO 3.2.0

1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44