Witaj Gościu! ( Zaloguj | Rejestruj )

Forum PHP.pl

 
Reply to this topicStart new topic
> unlink, Usuwa wszystkie pliki
kicaj
post
Post #1





Grupa: Zarejestrowani
Postów: 1 640
Pomógł: 28
Dołączył: 13.02.2003
Skąd: Międzyrzecz/Poznań

Ostrzeżenie: (0%)
-----


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?

Ten post edytował kicaj 13.05.2010, 17:46:28
Go to the top of the page
+Quote Post
ziqzaq
post
Post #2





Grupa: Zarejestrowani
Postów: 428
Pomógł: 128
Dołączył: 17.06.2007

Ostrzeżenie: (0%)
-----


Wygląda jakby $uniqueID było pustym ciągiem znaków. Jest taka możliwość?
Go to the top of the page
+Quote Post
kicaj
post
Post #3





Grupa: Zarejestrowani
Postów: 1 640
Pomógł: 28
Dołączył: 13.02.2003
Skąd: Międzyrzecz/Poznań

Ostrzeżenie: (0%)
-----


Nie. Przed dodaje jeszcze: echo $file...
Dalej nie wiem czemu sie tak dzieje.
Go to the top of the page
+Quote Post
ziqzaq
post
Post #4





Grupa: Zarejestrowani
Postów: 428
Pomógł: 128
Dołączył: 17.06.2007

Ostrzeżenie: (0%)
-----


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ą? (IMG:style_emoticons/default/smile.gif)
Go to the top of the page
+Quote Post
kicaj
post
Post #5





Grupa: Zarejestrowani
Postów: 1 640
Pomógł: 28
Dołączył: 13.02.2003
Skąd: Międzyrzecz/Poznań

Ostrzeżenie: (0%)
-----


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

...to ze takie podstawy sie sprawdza zanim zada sie pytanie.
Go to the top of the page
+Quote Post
croc
post
Post #6





Grupa: Zarejestrowani
Postów: 706
Pomógł: 108
Dołączył: 12.03.2010

Ostrzeżenie: (0%)
-----


Zrób test:

  1. foreach(glob($uniqueID . '*') as $file) {
  2. echo $file . ', ';
  3. }
Go to the top of the page
+Quote Post
kicaj
post
Post #7





Grupa: Zarejestrowani
Postów: 1 640
Pomógł: 28
Dołączył: 13.02.2003
Skąd: Międzyrzecz/Poznań

Ostrzeżenie: (0%)
-----


@croc: czytaj uwaznie...
Go to the top of the page
+Quote Post
ziqzaq
post
Post #8





Grupa: Zarejestrowani
Postów: 428
Pomógł: 128
Dołączył: 17.06.2007

Ostrzeżenie: (0%)
-----


~croc
Napisał, że już tego próbował.
~kicaj
Wolałem się upewnić (IMG:style_emoticons/default/winksmiley.jpg)
Możesz zaprezentować jak wygląda to id?
Go to the top of the page
+Quote Post
croc
post
Post #9





Grupa: Zarejestrowani
Postów: 706
Pomógł: 108
Dołączył: 12.03.2010

Ostrzeżenie: (0%)
-----


"Przed" zrozumiałem jako "przed pętlą". No to napisz co zwraca ten test z echo.
Go to the top of the page
+Quote Post
kicaj
post
Post #10





Grupa: Zarejestrowani
Postów: 1 640
Pomógł: 28
Dołączył: 13.02.2003
Skąd: Międzyrzecz/Poznań

Ostrzeżenie: (0%)
-----


$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)
Go to the top of the page
+Quote Post
melkorm
post
Post #11





Grupa: Zarejestrowani
Postów: 1 366
Pomógł: 261
Dołączył: 23.09.2008
Skąd: Bydgoszcz

Ostrzeżenie: (0%)
-----


  1. foreach(glob($uniqueID . '*') as $file) {
  2. }
Go to the top of the page
+Quote Post
croc
post
Post #12





Grupa: Zarejestrowani
Postów: 706
Pomógł: 108
Dołączył: 12.03.2010

Ostrzeżenie: (0%)
-----


Problem jest banalny, tylko pan kicaj nie chce współpracować.
Go to the top of the page
+Quote Post
kicaj
post
Post #13





Grupa: Zarejestrowani
Postów: 1 640
Pomógł: 28
Dołączył: 13.02.2003
Skąd: Międzyrzecz/Poznań

Ostrzeżenie: (0%)
-----


file_exists, is_file zwracaja true
Go to the top of the page
+Quote Post
croc
post
Post #14





Grupa: Zarejestrowani
Postów: 706
Pomógł: 108
Dołączył: 12.03.2010

Ostrzeżenie: (0%)
-----


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.
Go to the top of the page
+Quote Post
kicaj
post
Post #15





Grupa: Zarejestrowani
Postów: 1 640
Pomógł: 28
Dołączył: 13.02.2003
Skąd: Międzyrzecz/Poznań

Ostrzeżenie: (0%)
-----


@croc: no takie oczywiste bledy sprawdzalem...
Go to the top of the page
+Quote Post
croc
post
Post #16





Grupa: Zarejestrowani
Postów: 706
Pomógł: 108
Dołączył: 12.03.2010

Ostrzeżenie: (0%)
-----


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.
Go to the top of the page
+Quote Post
ziqzaq
post
Post #17





Grupa: Zarejestrowani
Postów: 428
Pomógł: 128
Dołączył: 17.06.2007

Ostrzeżenie: (0%)
-----


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ć.
Go to the top of the page
+Quote Post

Reply to this topicStart new topic
2 Użytkowników czyta ten temat (2 Gości i 0 Anonimowych użytkowników)
0 Zarejestrowanych:

 



RSS Aktualny czas: 21.09.2025 - 10:39