Pomoc - Szukaj - Użytkownicy - Kalendarz
Pełna wersja: [PHP] Błąd przy sortowaniu tablicy
Forum PHP.pl > Forum > Przedszkole
radnow
Witam.

Mam problem z sortowaniem wyników w poniższym skrypcie.

Byłbym wdzięczny za pomoc w poprawnym wyświetleniu posortowanego wyniku.


  1. <?php
  2. $dir=opendir(&#092;"katalog/\"); 
  3. while($plik=readdir($dir)){ 
  4.  
  5. if(($plik!=&#092;".\")&&($plik!=\"..\")){ 
  6. $pliki[]=$plik; 
  7. // otwiera pliki txt w pętli
  8. $fp = fopen(&#092;"http://domena.pl/katalog/\".\"$plik\", \"r\");
  9. $wyswietl = fgets($fp, 4096);
  10. // w tym momencie wyświetli zawartość wszystkich plików txt
  11. // to wyświetlenie działa prawidłowo, tylko nie sortuje zawartości
  12. // echo \"Zawartość $plik : $wyswietl 
  13. &#092;";
  14.  
  15.  
  16. $sor[]=$wyswietl;
  17. $sor2 = sort($sor);
  18. // a to nie dziła bo wyświetla w $sort2 same jedynki
  19. echo &#092;"Zawartość $plik : $sor2
  20. &#092;";
  21.  
  22. fclose($fp);
  23. } 
  24. }
  25. $ilosc=count($pliki); 
  26. // wyświetla ilość plików w katalogu
  27.  echo &#092;"Plików w katalogu: $ilosc\";
  28. ?>

Nie potrafię wywołać plików z katalogu tak, aby ich zawartość była wyświetlana od największej do najmniejszej. Help!


// Witaj na forum
// Pamiętaj, że na Przedszkolu obowiązują tagi w tytule
// Pozdrawiam, ayeo
kornel-php
Zamiast wyświetlać pliki od razu, dodaj je do tablicy, posortuj tablicę sort()" title="Zobacz w manualu PHP" target="_manual i wypisz tablice w nowej pętli.
-Jakub-
mam rozumieć że chcesz wylistować zawartosć katalogu? jesli tak to skorzystaj z mojego skryptu.

btw. skrypt który podales praktycznie w co drugiej linijce ma błędy, mozliwe ze to przez twoj edytor, bo chodzbys na glowie stanął to funkcja warunkowa
  1. <?php
  2. if(($plik!=&#092;".\")&&($plik!=\"..\"))
  3. ?>
Ci nie zadziala tongue.gif

tutaj zamieszczam dzialajacy skrypt nad którym juz dzisiaj troszke posiedzialem, i który znajduje sie na forum w dziale przedszkole (w bardziej rozbudowanej postaci)
  1. <?php
  2. //sprawdzenie ile plików jest w katalogu
  3.  
  4. $katalog="katalog/";
  5. $kat=opendir($katalog);
  6. $ile=0;
  7. while($plik=readdir($kat)) {
  8. $ile++;
  9. }
  10. $ileplikow = $ile;
  11.  
  12. //otworzenie katalogu, odczytanie plików i zapisanie ich w tablicy
  13. $uchwyt = opendir("katalog/");
  14. while ($plik = readdir($uchwyt))
  15. {
  16. if ($plik != '..' && $plik != '.')
  17.  $pliki[] = $plik;
  18. }
  19.  
  20. closedir($uchwyt);
  21.  
  22. //sortowanie plików
  23.  
  24. array_multisort ($pliki, SORT_REGULAR, SORT_ASC); // SORT_ASC sortuje od najmniejszego do najwiekszego, a SORT_DESC odwrotnie
  25.  
  26. //wyświetlenie tablicy
  27. for ($i = 0; $i<$ileplikow; $i++)
  28. {
  29. echo "$pliki[$i]<br>" ;
  30.  
  31. }
  32. ?>
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.