Pomoc - Szukaj - Użytkownicy - Kalendarz
Pełna wersja: Problem z funkcją scandir()
Forum PHP.pl > Forum > Przedszkole
Forgoot
Chciałbym napisać skrypt, który miałby za zadanie wyświetlać tekst (długości 43 naków) z plików kolejno od ostatniego do 5-ciu plików wstecz o rozszeżeniu *.dat, znajdujących się w katalogu komentarze. Każdy plik *.dat to odrębny komentarz.
Chciałbym też aby te 43 znaki (wycinek komentarza) były wyświetlane jako link prowadzący do całej treści zawartej w danym pliku (*.dat). Dodam tylko, że pliki komentarzy są zapisywane w następujący sposób: najnowszy komentarz jest zapisywany jako ostatni (np: 1.dat, 2.dat, ...) w kataogu komentarze.
Prosiłbym o wskazówki jakich funkcji użyć oraz komentarze w przykładowych kodach...

Mam nadzieję, że zozumiale wszystko opisałem winksmiley.jpg ...
Pozdrawiam.
Pigula
uzywasz funkcji scandir() i masz juz tablice z plikami i katologami. sa one zapisane alfabetycznie wiec bierzesz 5 ostatnich elementow. mozesz to zrobic w petli najpierw count() zeby zliczyc wszystkie elementy, przypisujesz to do jakiejs zmiennej robisz 5 iteracji zakazdym razem zmniejszajac o jeden wartosc tej zmiennej np.
  1. <?php
  2. for ($zmienna=count($tablica_plikow)-1, $koniec=count($tablica_plikow)-6; $zmienna>$koniec; $zmienna--)
  3. {
  4. //wyswietlanie
  5. }
  6. ?>

wyswietlanie polega na otworzenu pliku pobranie jego zawartosci substr() obcinasz ilosc znakow cie interesujaca, i dajesz to jako link z parametrem, ktorym jest miejsce w tablicy plik. jak ktos kliknie link odczytujesz parametr i juz wyswietlasz tylko ten jeden plik.
Forgoot
Funkcja scandir()" title="Zobacz w manualu php" target="_manual jest chyba tylko pod PHP5. Przynajmniej tak mi się wydaje, a w manualu pisze:
Kod
scandir (php 5)


Niestety ja testuję skrypty php na starszej wersji php (4.3.4) - Krasnal Serv.
mike
1. Zmień temat. Inaczej wątek zostanie zamknięty
2. Manual jest o tyle wspaniałą sprawą ponieważ pod opisami funkcji są komentzrze użytwkowników, które są wartościowsze czasem niż sam opis. Oto co znalazłem w jadnym z takich komentarzy pod opisem funkcji scandir():
  1. <?
  2. function scandir($dir = './', $sort = 0)
  3. {
  4.  
  5.  $dir_open = @ opendir($dir);
  6.  
  7.  if (! $dir_open)
  8.  return false;
  9.  
  10.  
  11.  while (($dir_content = readdir($dir_open)) !== false)
  12.  $files[] = $dir_content;
  13.  
  14.  if ($sort == 1)
  15.  rsort($files, SORT_STRING);
  16.  else
  17.  sort($files, SORT_STRING);
  18.  
  19.  return $files;
  20. }
  21. ?>
Mamber
podajcie po kolei funkcje jakich trzeba uzyc
Gość_ona_15
Moglby ktos podac gotowy lub przykladfowy kod?
Pigula
Cytat(Mamber @ 2005-10-29 16:54:06)
podajcie po kolei funkcje jakich trzeba uzyc

przeciez opisalem to wyzej co robic pokolei
mike_mech napisal zastapic funkcje scandir()
Cytat
Moglby ktos podac gotowy lub przykladfowy kod?

masz opisanie co robic wiec pokombinuj! a gotowcow nasz pelno >>TU<<
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.