Pomoc - Szukaj - Użytkownicy - Kalendarz
Pełna wersja: [PHP]usunięcie plików z folderu - problem
Forum PHP.pl > Forum > Przedszkole
wacek800
Witam.
Mam pewien problem z usunięciem plików z folderu na serwerze. Na localhost działa mi wszystko, pliki z folderu są kasowane a następnie folder usuwany. Jednak na serwerze pliki z folderu nie chcą się skasować. Chmod mam ustawione na 0777. Proszę o podpowiedź co robię źle.
Oto mój skrypt
CODE
<?php

$nazwa_folderu =test;//podajemy nazw? folderu do oczyszczenia i usuni?cia

$dir = opendir($nazwa_folderu);

while(false !== ($a = readdir($dir))) { //pobieramy w p?tli nazwy plików z folderu
if($a!='.' and $a!='..') { //je?eli nazw? pliku nie jest . lub ..
chmod($nazwa_folderu, 0777); //zmieniamy uprawnienia na 777

unlink($nazwa_folderu."\\".$a); //usuwamy go
}

}
closedir($dir);
rmdir($nazwa_folderu); //usuwamy pusty folder
?>
wookieb
Włącz pełne raportowanie błędów
Temat: Jak poprawnie zadac pytanie
wacek800
Zwraca mi taki komunikat
CODE
Warning: unlink(test\175897411054.jpg): No such file or directory in

Wim co ten komunikat oznacza, ale nie wiem jak się go pozbyć
wookieb
Sprawdź czy plik istnieje file_exists
Poza tym
  1. exec('rm -R folder');
i po sprawie.

EDIT BY thek: Nie wiem czy ma uprawnienia dla exec, ale powinno mu to faktycznie pomóc w tym i wielu innych problemach z plikami. Zwłaszcza jeśli za folder da / winksmiley.jpg
wacek800
Siedzę i kombinuje i nic nie wychodzi. Jak sprawdzam, czy w folderze są pliki to wypisuje mi je że są. Oto kod:
  1. $nazwa_folderu ='test';//podajemy nazwę folderu do oczyszczenia i usunięcia
  2.  
  3. $dir = opendir($nazwa_folderu);
  4.  
  5. while(false !== ($a = readdir($dir))) { //pobieramy w pętli nazwy plików z folderu
  6. if (file_exists($nazwa_folderu)) {
  7. echo "Plik $a istnieje<br>";
  8. } else {
  9. echo "Plik $a nie istnieje<br>";
  10. }


ale jak spróbuję folder wyczyścić, dodając unlink
  1. $nazwa_folderu ='test';//podajemy nazwę folderu do oczyszczenia i usunięcia
  2.  
  3. $dir = opendir($nazwa_folderu);
  4.  
  5. while(false !== ($a = readdir($dir))) { //pobieramy w pętli nazwy plików z folderu
  6. if (file_exists($nazwa_folderu)) {
  7. echo "Plik $a istnieje<br>";
  8. unlink($nazwa_folderu."\\".$a); //usuwamy go
  9. } else {
  10. echo "Plik $a nie istnieje<br>";
  11. }


to dostaję taki komunikat
Cytat
Warning: unlink(test\175897411054.jpg): No such file or directory in...


Proszę o podpowiedź co robię źle sciana.gif
wookieb
No przecież ty sprawdzasz czy istnieje folder a nie plik. Przyjrzyj się no.....
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.