hoe directory leegmaken en verwijderen

Overzicht Reageren

Sponsored by: Vacatures door Monsterboard

Marcus geleyn

marcus geleyn

04/12/2011 15:13:51
Quote Anchor link
Beste mensen,
ik denk zo wat alle scriptjes afgelopen te hebben maar het lukt me niet om een directory leeg te maken en daarna te verwijderen.
Onderstaand scripje is het eenvoudigste van de lange lijst en ook dat geeft dezelfde problemen. Wat is er mis, kan iemand mij helpen?

Code (php)
PHP script in nieuw venster Selecteer het PHP script
1
2
3
4
5
6
7
8
9
10
11
<?
$mydir
= "JavaPowUpload/Extra/FileProcessingScripts/PHP/UploadedFiles/fotoreeks1/";
$d = opendir($mydir);
while($entry = $d->read()) {  
if ($entry!= "." && $entry!= "..") {
  unlink($entry);  
  }
  }

  $d->close();
  rmdir($mydir);
  ?>


In dit voorbeeld moet "fotoreeks1" dus leeggemaakt worden en moet de map daarna verdwijnen. Het script zit niet in de map "JavaPowUpload", maar ook dat heb ik al geprobeerd.

Wie weet er een oplossing, eventueel met een ander script? Dank U!
 
PHP hulp

PHP hulp

21/11/2024 20:24:12
 
Victor -

Victor -

04/12/2011 15:17:11
Quote Anchor link
zit het in de map waar javapowupload ook staat?
anders moet je het absolute pad neerzetten
 
Marcus geleyn

marcus geleyn

04/12/2011 15:22:21
Quote Anchor link
Hoi Victor, bedoel je met het absolute pad het volledige pad van de server, zoals: "public_html/werkmap/JavaPowUpload/Extra/FileProcessingScripts/PHP/UploadedFiles/fotoreeks1/;"

Toevoeging op 04/12/2011 15:25:19:

Nee Victor, snel even geprobeerd en krijg voldende foutmeldingen als het script in de map "JavaPowUpload" gezet is:

Warning: opendir(JavaPowUpload/Extra/FileProcessingScripts/PHP/UploadedFiles/fotoreeks1/) [function.opendir]: failed to open dir: No such file or directory in /home/alduid/public_html/sarahgeleyn/werkmap/JavaPowUpload/DelDir.php on line 3

Fatal error: Call to a member function read() on a non-object in /home/alduid/public_html/sarahgeleyn/werkmap/JavaPowUpload/DelDir.php on line 4


Toevoeging op 04/12/2011 15:35:17:

Snel even het absolute pad veranderd en het scriptje in de map "werkmap" geplaatst. Het geeft onderstaande foutmelding:

Fatal error: Call to a member function read() on a non-object in /home/alduid/public_html/sarahgeleyn/werkmap/DelDir.php on line 4
 
Tobias Tobias

Tobias Tobias

04/12/2011 15:42:20
Quote Anchor link
ik gebruik deze functie, deze leegt en verwijdert ook de submappen:

Code (php)
PHP script in nieuw venster Selecteer het PHP script
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
<?php
 function rrmdir($dir) {
   if (is_dir($dir)) {
     $objects = scandir($dir);
     foreach ($objects as $object) {
       if ($object != "." && $object != "..") {
         if (filetype($dir."/".$object) == "dir") rrmdir($dir."/".$object); else unlink($dir."/".$object);
       }
     }

     reset($objects);
     rmdir($dir);
   }
 }


//aanroepen
rrmdir($map_naam);
?>


Let er uiteraard wel op dat de map en de bestanden daarin de juiste rechten hebben
 
Marcus geleyn

marcus geleyn

04/12/2011 15:52:06
Quote Anchor link
Dat scriptje heb ik ook al gehad Tobias, het zal wel aan mij liggen hoor dat het niet werkt.
Ik had het zo gedaan:
Code (php)
PHP script in nieuw venster Selecteer het PHP script
1
2
3
4
5
6
<?php
$dir
="JavaPowUpload/Extra/FileProcessingScripts/PHP/UploadedFiles/fotoreeks1/";
 function
rrmdir($dir) {
   if (is_dir($dir)) { .........

Die "$dir" moet toch een pad zijn, of heb ik dat verkeerd?
 
PHP Scripter

PHP Scripter

04/12/2011 19:21:11
Quote Anchor link
Marcus dat klopt, het moet een pad zijn. Maar heb je wel de juiste rechten ingesteld bij de mappen? En je gebruikt de functie verkeerd. Het moet zo:

Code (php)
PHP script in nieuw venster Selecteer het PHP script
1
2
3
4
5
6
7
<?php
function rrmdir($dir) {
    // functie hierrr
}

rrmdir('fotos/mijnalbum/');
?>
Gewijzigd op 04/12/2011 19:22:55 door PHP Scripter
 
Marcus geleyn

marcus geleyn

04/12/2011 20:27:55
Quote Anchor link
Welbedankt iedereen, het werkt uitstekend nu en suppersnel! De rechten waren niet goed ingesteld en de funktie stond inderdaad verkeerd. TOF!!!
 



Overzicht Reageren

 
 

Om de gebruiksvriendelijkheid van onze website en diensten te optimaliseren maken wij gebruik van cookies. Deze cookies gebruiken wij voor functionaliteiten, analytische gegevens en marketing doeleinden. U vindt meer informatie in onze privacy statement.