Pomoc - Szukaj - Użytkownicy - Kalendarz
Pełna wersja: [PHP][MySQL]Usuwanie pustych katalogow
Forum PHP.pl > Forum > Przedszkole
Ezoman
Chcialbym po udanej operacji usuniecia pliku, usunac puste katalogi. Mam cos takiego:


  1. //**************************************Ustalanie adresu URL ze sciezki******************************************************//
  2. //sciezka rozdzielona na 2 czesci z usunieciem public_html - 2 czesc zawiera /(katalog glowny www) i dalej to juz normalne katalogi
  3. $dir_relative = explode("public_html", $dir_filename);
  4. //lacze adres strony(bezwzgledny) z 2 czescia sciezki - wychodzi normalny adres URL
  5. $dir_absolute = "http://www.(nie moge podac bo nie mam wgl zabezpieczonego panelu admina).pl".$dir_relative[1];
  6. //********************************************************************************
    *******************************************//
  7.  
  8.  
  9. //Usuwanie pustych katalogow
  10. $directories = explode("/", $dir_relative[1]);
  11.  
  12. foreach($directories as $curr_dir)
  13. {
  14. echo "$curr_dir<br>";
  15. }
  16.  
  17.  
  18. foreach($directories as $curr_dir)
  19. {
  20. $a = glob('$curr_dir/*.*');
  21. if(empty($a))
  22. {
  23. rmdir($curr_dir);
  24. echo 'Usunieto katalog'.$curr_dir;
  25. break;
  26. }
  27. }
  28.  


w $dir_filename jest pelna sciezka pliku(od /home...) rozdzielilem to explod'em na 2 czesci - przed i po public_html. Po public_html jest zawartosc strony. Wychodzi z tego normalny adres. no i pomyslalem ze rozdziele sciezke na katalogi. Pierwszy foreach jest testowy - zeby sprawdzic czy do tego momentu wszystko dziala - i dziala. Niestety 2 foreach nie dziala ;/ Kod w nim zawarty znalazlem na jakims forum, nigdzie indziej nie moglem tego znalezc. Pewnie jest zle... Co zrobic aby to dzialalo? Ma sprawdzac po kolei czy katalog jest pusty, jak nie to isc dalej a jak tak to usuwac go(tyle ze chyba trzeba odwrocic tabele - bo chyba sie nie da tak zeby usuwal jesli pusty LUB zawiera puste katalogi?) chce poprostu zeby jak np byl jeden plik w katalogach: test/a/b/c/d/plik.php (nie ma nic oprocz plik.php w tych folderach), to usuwal katalog test razem z zawartoscia.
Mam nadzieje ze zbytnio nie namieszalem...

Prosze o dzialajacy kod.
nospor
rmdir($curr_dir);
Przecież rmdir wymaga pełnej sciezki do katalogu a nie jakiejś tam składowej z tej ściezki.
To jest wersja lo-fi głównej zawartości. Aby zobaczyć pełną wersję z większą zawartością, obrazkami i formatowaniem proszę kliknij tutaj.
Invision Power Board © 2001-2025 Invision Power Services, Inc.