Witaj Gościu! ( Zaloguj | Rejestruj )

Forum PHP.pl

 
Reply to this topicStart new topic
> Wyświetlanie i usuwanie plików z katalogu.
gawcio90
post
Post #1





Grupa: Zarejestrowani
Postów: 36
Pomógł: 0
Dołączył: 27.03.2013

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


Witam, mam kod, który wyświetla i usuwa wybrane pliki z katalogu po przez kliknięcie w link.
Kod działa umieszczony w pustym pliku jednak kiedy go zaimplementuje do swojego formularza aktualizacyjnego przestaje działać, a dokładnie zmienna
  1. $_GET['plik']
wydaje się być pusta.
Nie mam pojęcia dlaczego tak się dzieje, może dlatego, że sam formularz również działa na zmiennej GET?

Poniżej kod.

  1. <?php
  2.  
  3. foreach (new DirectoryIterator('uploads') as $plik) {
  4. if($plik->isDot()) continue;
  5.  
  6. $name_tmp = explode('.',$plik);
  7. $name = $name_tmp['0'];
  8. echo $name;
  9. echo '<a href="update.php?plik='.$plik.'"><img src="/data/images/delete.jpg"/></a><br>';
  10. }
  11.  
  12. $dir = "/var/www/test/uploads/";
  13.  
  14. if (isset($_GET['plik'])) {
  15. unlink ($dir.$_GET['plik']);
  16.  
  17. }
  18.  
  19. ?>
\

Jakieś pomysły?

Pozdrawiam
Go to the top of the page
+Quote Post
timon27
post
Post #2





Grupa: Zarejestrowani
Postów: 578
Pomógł: 69
Dołączył: 15.04.2007
Skąd: Wrocław

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


W tej linijce:

  1. $name_tmp = explode('.',$plik);


nie powinno być przypadkiem:

  1. $name_tmp = explode('.',getFilename($plik));


?
Go to the top of the page
+Quote Post
gawcio90
post
Post #3





Grupa: Zarejestrowani
Postów: 36
Pomógł: 0
Dołączył: 27.03.2013

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


Usuwanie rozszerzenia działa poprawnie w obu przypadkach. Gdzieś indziej musi być błąd :/
Go to the top of the page
+Quote Post
toaspzoo
post
Post #4





Grupa: Zarejestrowani
Postów: 778
Pomógł: 84
Dołączył: 29.07.2010
Skąd: Gliwice / Pławniowice Mistrz niezmordowanej klawiatury.

Ostrzeżenie: (20%)
X----


  1.  
  2. if (!empty($_GET['plik'])) {
  3. unlink ($dir.$_GET['plik']);
  4.  
  5. }
Go to the top of the page
+Quote Post
gawcio90
post
Post #5





Grupa: Zarejestrowani
Postów: 36
Pomógł: 0
Dołączył: 27.03.2013

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


Sprawdziłem, ale to nic nie zmienia. Coś jest nie tak z samą zmienną. Przykładowo:
  1. echo $_GET['plik'];
  2. if (!empty($_GET['plik'])) {
  3. unlink ($dir.$_GET['plik']);
  4. }


Przykładowo w tym wypadku po naciśnięciu w link powinien mi wyświetlić nazwę pliku ze zmiennej a tego nie robi.
Go to the top of the page
+Quote Post
ber32
post
Post #6





Grupa: Zarejestrowani
Postów: 332
Pomógł: 22
Dołączył: 6.07.2010

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


Witam.
Spróbuj wstawić kod nad foreach
  1. $dir = "/var/www/test/uploads/";
  2.  
  3. echo $_GET['plik'];
  4. if (!empty($_GET['plik'])) {
  5. unlink ($dir.$_GET['plik']);
  6. }
Go to the top of the page
+Quote Post
gawcio90
post
Post #7





Grupa: Zarejestrowani
Postów: 36
Pomógł: 0
Dołączył: 27.03.2013

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


Witam,
dlaczego nad? Wtedy przecież $plik będzie pusta i tym samym $_GET['plik'] również.

Spróbowałem w każdym razie i nie to nie zmienia :/
Go to the top of the page
+Quote Post
ber32
post
Post #8





Grupa: Zarejestrowani
Postów: 332
Pomógł: 22
Dołączył: 6.07.2010

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


pokaż jak go implementujesz i opisz w jakich plikach
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: 22.08.2025 - 20:31