Pomoc - Szukaj - Użytkownicy - Kalendarz
Pełna wersja: Sortowanie
Forum PHP.pl > Forum > PHP
pys1986
Mam skrypt ktory odczytuje nazwy folderow ktore sa liczbami ale odczytuje mi w kolejnosci rosnacej a ja chce aby mi to odczytywalo w kolejnosci malejacej
JAK TO ZMIENIC questionmark.gif
Seth
Co zrobiles zle:
1. Nie podales jaki to skrypt
2. Nie podales kodu, ktory realizuje to sortowanie
3. Napisales na zle forum
4. Nie uzyles wyszukiwarki
5. Sadzisz, ze na forum sa wrozki

rolleyes.gif mad.gif

RTFM ! - DESC, ASC
pys1986
  1. <?php
  2. if($dh = opendir (&#092;"../foto\"))
  3. {
  4.  while( ($file = readdir($dh)) !== false )
  5.  {
  6. if($file!=&#092;".\" && $file!=\"..\")
  7. {
  8.  
  9. list( $dat, $autor ) = explode( '_', $file );  
  10. $dzien = substr($dat, 4, 6);
  11. $mies = substr($dat, 2, -2);
  12. $rok = substr($dat, 0, 2);
  13. switch($mies){
  14. case '01': $mies='Styczeń'; break;
  15. case '02': $mies='Luty'; break;
  16. case '03': $mies='Marzec'; break;
  17. case '04': $mies='Kwiecień'; break;
  18. case '05': $mies='Maj'; break;
  19. case '06': $mies='Czerwiec'; break;
  20. case '07': $mies='Lipiec'; break;
  21. case '08': $mies='Sierpień'; break;
  22. case '09': $mies='Wrzesień'; break;
  23. case '10': $mies='Paˇdziernik'; break;
  24. case '11': $mies='Listopad'; break;
  25. case '12': $mies='Grudzień'; break;
  26. }
  27. $data=$dzien.&#092;" \".$mies.\" 20\".$rok;
  28.  
  29. //-----------Wyswietl------------
  30.  
  31. echo&#092;"<a href=\"show.php?cat={$file}\">\".$data.\"</a>\"; 
  32. echo&#092;"&nbsp;&nbsp;Autor: \".$autor.\"<br>\";
  33.  
  34.  
  35. }
  36. }
  37. }
  38. closedir ($dh);
  39. ?>
Seth
Sprawdz to:

  1. <?php
  2. if($dh = opendir (&#092;"../foto\"))
  3. {
  4.  $filesList = array();
  5.  while( ($file = readdir($dh)) !== false )
  6.  {
  7. if($file!=&#092;".\" && $file!=\"..\")
  8. {
  9.  
  10.  list( $dat, $autor ) = explode( '_', $file );
  11.  $dzien = substr($dat, 4, 6);
  12.  $mies = substr($dat, 2, -2);
  13.  $rok = substr($dat, 0, 2);
  14.  
  15.  switch($mies){
  16. case '01': $mies='Styczeń'; break;
  17. case '02': $mies='Luty'; break;
  18. case '03': $mies='Marzec'; break;
  19. case '04': $mies='Kwiecień'; break;
  20. case '05': $mies='Maj'; break;
  21. case '06': $mies='Czerwiec'; break;
  22. case '07': $mies='Lipiec'; break;
  23. case '08': $mies='Sierpień'; break;
  24. case '09': $mies='Wrzesień'; break;
  25. case '10': $mies='Paˇdziernik'; break;
  26. case '11': $mies='Listopad'; break;
  27. case '12': $mies='Grudzień'; break;
  28.  }
  29.  
  30.  $data=$dzien.&#092;" \".$mies.\" 20\".$rok;
  31.  
  32.  $filesList[] = &#092;"<a href=\"show.php?cat={$file}\">\".$data.\"</a>&nbsp;&nbsp;Autor: \".$autor.\"<br>\";
  33. }
  34.  }
  35.  
  36.  //-----------Wyswietl------------
  37.  array_reverse($fileList);
  38.  
  39.  foreach($fileList as $line)
  40.  {
  41. echo $line;
  42.  }
  43.  
  44. }
  45. closedir ($dh);
  46. ?>
tiraeth
  1. <?php
  2. if($dh = opendir (&#092;"../foto\"))
  3. {
  4.  while( ($file = readdir($dh)) !== false )
  5.  {
  6. if($file!=&#092;".\" && $file!=\"..\")
  7. {
  8.  # wrzucamy pliki do tablicy, ktora posortujemy
  9.  $pliki[] = $file; 
  10. }
  11.  }
  12. }
  13. closedir ($dh);
  14.  
  15. # sortujemy tablice
  16. reset($pliki);
  17. rsort($pliki);
  18.  
  19. # wyswietlamy tablice korzystajac z foreach
  20. foreach($pliki as $file)
  21. {
  22.  list( $dat, $autor ) = explode( '_', $file );  
  23.  $dzien = substr($dat, 4, 6);
  24.  $mies = substr($dat, 2, -2);
  25.  $rok = substr($dat, 0, 2);
  26.  switch($mies)
  27.  {
  28. case '01': $mies='Styczeń'; break;
  29. case '02': $mies='Luty'; break;
  30. case '03': $mies='Marzec'; break;
  31. case '04': $mies='Kwiecień'; break;
  32. case '05': $mies='Maj'; break;
  33. case '06': $mies='Czerwiec'; break;
  34. case '07': $mies='Lipiec'; break;
  35. case '08': $mies='Sierpień'; break;
  36. case '09': $mies='Wrzesień'; break;
  37. case '10': $mies='Paˇdziernik'; break;
  38. case '11': $mies='Listopad'; break;
  39. case '12': $mies='Grudzień'; break;
  40.  }
  41.  
  42.  $data=$dzien.&#092;" \".$mies.\" 20\".$rok;
  43.  
  44.  echo&#092;"<a href=\"show.php?cat={$file}\">\".$data.\"</a>\";
  45.  echo&#092;"&nbsp;&nbsp;Autor: \".$autor.\"<br>\";
  46. }
  47. ?>


To posortuje pliki....


@Seth: Pliki wyświetlane przez readdir nie są sortowane. Więc należy najpierw wrzucić je do tablicy a następnie posortować. Pliki te zwracane są w kolejności w jakiej zostały zapisane na dysku.
pys1986
Dzienki dziala biggrin.gif
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.