Witaj Gościu! ( Zaloguj | Rejestruj )

Forum PHP.pl

 
Reply to this topicStart new topic
> [PHP]Lista plików, pomoc w edycji
kormateusz
post 23.08.2009, 19:04:37
Post #1





Grupa: Zarejestrowani
Postów: 3
Pomógł: 0
Dołączył: 23.08.2009

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


Witam, pisząc stronkę natknąłem się na problem z listą plików, w php niestety nie umiem programować i co za tym idzie nie umiem sobie przerobić kodu:
  1. <?phpdefine('NOT','lista.php');
  2.  
  3. // funkcja wyswietlajaca
  4. function wyswietl($nazwa)
  5. {
  6. echo "<tr><td class=\"lista\"><a href=\"...\">$nazwa</a></td></tr>";
  7. }
  8. // funkcja glowna
  9. function pliki()
  10. {
  11.  
  12. $kat = opendir('.');
  13. while(false !== ($file = readdir($kat)))
  14. {
  15. if ($file != '.' && $file != '..' && $file != 'lista.php'){ echo wyswietl($file); }
  16. }
  17. }
  18. ?>


By przy wyświetlaniu nie pokazywało mi rozszerzenia html i by pliki były sortowane wg daty od najnowszego do najstarszego. Gdyby ktoś miał chęci by pomóc to bardzo proszę.

Pozdrawiam, kormateusz.
Go to the top of the page
+Quote Post
erix
post 23.08.2009, 20:12:10
Post #2





Grupa: Moderatorzy
Postów: 15 467
Pomógł: 1451
Dołączył: 25.04.2005
Skąd: Szczebrzeszyn/Rzeszów




http://pl.php.net/manual/pl/ref.filesystem.php - tu jest na pewno.


--------------------

ZCE :: Pisząc PW załączaj LINK DO TEMATU i TYLKO w sprawach moderacji :: jakiś błąd - a TREŚĆ BŁĘDU? :: nie ponaglaj z odpowiedzią via PW!
Go to the top of the page
+Quote Post
kormateusz
post 26.08.2009, 11:19:10
Post #3





Grupa: Zarejestrowani
Postów: 3
Pomógł: 0
Dołączył: 23.08.2009

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


Witam, jakoś udało mi się zrobić grzebiąc po innych skryptach żeby nie pokazywało html, ale ucinając html ucina z końca literę "m" sciana.gif, jak zrobić żeby sortowało wg daty dalej nie wiem, może ktoś podpowie i pomoże z tą m-ką?

  1. <?phpdefine('NOT','lista.php');
  2.  
  3. // funkcja wyswietlajaca
  4. function wyswietl($nazwa)
  5. {
  6. $nazwa = rtrim($nazwa, '.html');
  7. echo "<tr><td class=\"lista\"><a href=\"...\">$nazwa</a></td></tr>";
  8. }
  9. // funkcja glowna
  10. function pliki()
  11. {
  12.  
  13. $kat = opendir('.');
  14. while(false !== ($file = readdir($kat)))
  15. {
  16. if ($file != '.' && $file != '..' && $file != 'lista.php'){ echo wyswietl($file); }
  17. }
  18. }
  19. ?>
Go to the top of the page
+Quote Post
b_chmura
post 26.08.2009, 12:06:53
Post #4





Grupa: Zarejestrowani
Postów: 813
Pomógł: 34
Dołączył: 18.03.2007
Skąd: o stamtąd

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


Masz tu proszę ja Ciebie taką funkcje
  1. function sort_scandir($in, $sort = 0)
  2. {
  3. $files = scandir($in, $sort);
  4.  
  5. foreach($files as $files)
  6. {
  7. if(is_file($files))
  8. {
  9. $file[1][] = $files;
  10. }
  11. else
  12. {
  13. $file[2][] = $files;
  14. }
  15. }
  16. foreach($file as $file)
  17. {
  18. foreach($file as $file)
  19. {
  20. if($file != '.' and $file != '..')
  21. {
  22. $out[] = $file;
  23. }
  24. }
  25. }
  26.  
  27. return $out;
  28. }


Zwraca posortowaną alfabetycznie listę plików.

Jeśli chcesz tak jak piszesz by pliki były sortowane według daty dodania musisz przed linijką
  1. $out[] = $file;

Pobrać datę dodania pliku filemtime i wstawić ją w tablice $out zamiast pustego między []. Później tablice $out sortujesz którąś z funkcji do sortowania którą sobie na pewno znajdziesz smile.gif


EDIT:

Może dodam że: do zmiennej $in wpisujesz ścieżkę do przeszukiwanego folderu ;-)


Pozdrawiam
Chmura B.

Ten post edytował b_chmura 26.08.2009, 12:08:01
Go to the top of the page
+Quote Post
kormateusz
post 27.08.2009, 18:08:01
Post #5





Grupa: Zarejestrowani
Postów: 3
Pomógł: 0
Dołączył: 23.08.2009

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


No dobra, szczerze mówiąc nie wiem już jak pomieszać te dwa skrypty żeby było tak jak mi potrzeba sciana.gif
Go to the top of the page
+Quote Post

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

 



RSS Wersja Lo-Fi Aktualny czas: 17.06.2025 - 12:50