Toon posts:

[PHP] lege directory verwijderen

Pagina: 1
Acties:

Verwijderd

Topicstarter
Hoi,

Ik hoop dat iemand mij kan en wil helpen.
Ik heb de volgende code al maar deze is natuurlijk
niet juist anders zou ik hier niet posten! :)
PHP:
1
<?/* BEGIN code */$dirhandle='a_path'; if (rmdir($dirhandle)==0) { $feedback='Dir not empty'; } /* EINDE code */?>

Alleen bij het uitvoeren van 'rmdir($dirhandle)' en de dir is niet leeg dan krijg ik een error die niet opgevangen wordt door het if statement. Nou kan ik een '@' voor rmdir($dirhandle)==0 zetten maar dan werkt mijn if statement ook niet.

De bedoeling is dus om een LEGE dir te verwijderen. Als de dir niet leeg is dan mag hij ook niet verwijderd worden. En moet hij een error terug geven.

Ik had in eerste instantie dit:
PHP:
1
<?/* BEGIN code */$dirhandle='a_path';//lees eerst '.' en '..' inreaddir($dirhandle); // dit is de '.'readdir($dirhandle); // dit is de '..'if ((readdir($handle)== false) { $feedback='Dir not empty'; } else { rmdir($dirhandle); $feedback='Dir removed!'; } /* END code */?>

Alleen ik heb niet echt het idee dat dit juist is en dat het
in elke situatie werkend zal zijn!

Kan iemand mij helpen?
Alvast bedankt.

EDIT: OEPS titel vergeten, sorry.
kan ik zo te zien niet meer veranderen!?!

  • D2k
  • Registratie: Januari 2001
  • Laatst online: 31-08 10:19

D2k

gebruik ff [.php] en [./php] (zonder de .) om je code

Doet iets met Cloud (MS/IBM)


  • Grum
  • Registratie: Juni 2001
  • Niet online
bij mij werkt
code:
1
2
3
4
5
6
7
8
9
10
11
12
if(@rmdir('testje') == false)
   print "Dit faalde :)";

en

if(!@rmdir('testje'))
   print "Dit faalde :)";

en

if(@rmdir('testje') == 0)
   print "Dit faalde :)";

allemaal zonder enig probleem

Verwijderd

Als je geen rechten hebt om die dir weg te gooien, geeft hij inderdaad een error. En dan werkt het if-statement niet meer. Kijk daar dus even naar (directory, dus RWX-rechten)

Verwijderd

Topicstarter
Op dinsdag 26 maart 2002 11:29 schreef Walhalla het volgende:
Als je geen rechten hebt om die dir weg te gooien, geeft hij inderdaad een error. En dan werkt het if-statement niet meer. Kijk daar dus even naar (directory, dus RWX-rechten)
denk niet dat het daar aan ligt. Het php script maakt ook zelf de dir aan (=een userdir) en ik kan ook dingen uppen in de dir vandaar.

maar ik zal het eens bekijken...
overigens een lege dir verwijderd die wel..

Verwijderd

Topicstarter
if(!@rmdir('testje'))
print "Dit faalde :)";
werkt bij mij ook zonder problemen dus ik hou dit maar aan.. thx!

Zal misschien een type foutje of een haakje zijn geweest..

  • Ericston
  • Registratie: Maart 2001
  • Laatst online: 05-09 18:58
PHP:
1
<?// [..]readdir($dirhandle); // dit is de '..'if ((readdir($handle)== false){// [..]?>

Bij die if mist inderdaad een ')'. Of staat er een teveel natuurlijk.

/me is een beetje dom. :z
Pagina: 1