Pomoc - Szukaj - Użytkownicy - Kalendarz
Pełna wersja: unlink
Forum PHP.pl > Forum > PHP
kicaj
Mam problem pewnie z podstawowa funkcja - unlink
  1. foreach(glob($uniqueID .'*') as $file) {
  2. unlink($file);
  3. ?}


Funkcja nie usuwa - jak powinna plikow z wybrana nazwa, a wszystkie pliki w danym folderze?
Dlaczego?
ziqzaq
Wygląda jakby $uniqueID było pustym ciągiem znaków. Jest taka możliwość?
kicaj
Nie. Przed dodaje jeszcze: echo $file...
Dalej nie wiem czemu sie tak dzieje.
ziqzaq
Cytat(kicaj @ 13.05.2010, 19:19:10 ) *
Nie. Przed dodaje jeszcze: echo $file...
Dalej nie wiem czemu sie tak dzieje.

Ale co ma "echo $file" do "echo $uniqueID" przed całą pętlą? smile.gif
kicaj
Cytat(ziqzaq @ 13.05.2010, 19:23:44 ) *
Ale co ma "echo $file" do "echo $uniqueID" przed całą pętlą? smile.gif

...to ze takie podstawy sie sprawdza zanim zada sie pytanie.
croc
Zrób test:

  1. foreach(glob($uniqueID . '*') as $file) {
  2. echo $file . ', ';
  3. }
kicaj
@croc: czytaj uwaznie...
ziqzaq
~croc
Napisał, że już tego próbował.
~kicaj
Wolałem się upewnić winksmiley.jpg
Możesz zaprezentować jak wygląda to id?
croc
"Przed" zrozumiałem jako "przed pętlą". No to napisz co zwraca ten test z echo.
kicaj
$uniqueID to 13-znakowy unikalny kod oparty na time() (np. 4bec2e494a57b), gdzie w folderze leza zazyczaj dwa pliki o tej nazwie z innym rozszerzeniem (np. 4bec2e494a57b.jpg i 4bec2e494a57b.png)
melkorm
  1. foreach(glob($uniqueID . '*') as $file) {
  2. }
croc
Problem jest banalny, tylko pan kicaj nie chce współpracować.
kicaj
file_exists, is_file zwracaja true
croc
No trudno żeby pokazywało false, skoro usuwa. Ale czy pętla z echo wypisuje wszystkie pliki w katalogu? Jeśli tak, to zrób echo $uniqueID . '*' zaraz przed foreach.
kicaj
@croc: no takie oczywiste bledy sprawdzalem...
croc
Nie sądzę. Jeśli usuwa ci wszystkie pliki to ewidentnie masz złą wartość w $uniqueID. Ale ja już się nie udzielam, bo nie umiesz normalnie odpowiadać na pytania, szkoda czasu.
ziqzaq
Może to nie wina samego wyrażenia w glob tylko całej ścieżki do pliku (jakieś znaki powodujące konflikt?) bo zgaduje, że plik php nie jest w tym samym foderze co pliki usuwane. Sprawdzałeś czy to samo dzieje się w innych folderach?
I tak z ciekawości na jakich systemach i wersjach php testowałeś to?
W sumie to błąd jest dziwny bo powinno wszystko śmigać.
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.