Witaj Gościu! ( Zaloguj | Rejestruj )

Forum PHP.pl

> Skrypt wyszukiwania i wyślietlania plików tekstowych
hawk55
post
Post #1





Grupa: Zarejestrowani
Postów: 2
Pomógł: 0
Dołączył: 23.02.2008

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


Witam,
otóż napisałem taki skrypt:

  1. <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">
  2. <html>
  3. <head>
  4. <title>Panel wyświetlania artykułów</title>
  5. <meta http-equiv="content-type" content="text/html; charset=windows-1250">
  6. </head>
  7.  
  8. <body bgcolor="lavender">
  9.  
  10. <?php
  11.  
  12. if($dir = opendir("files")) {
  13. while (($file = readdir($dir)) !== false) {
  14. echo "<a href=\"http://www.quot22.cal.pl/artykuly/files/$file\">$file</a>";
  15. }
  16. closedir($dir);
  17. }
  18. //przeszukuje i wyświetla linki
  19.  
  20. $filename = "http://www.quot22.cal.pl/artykuly/files/$file";
  21. $fh = fopen($filename, 'r');
  22.  
  23. while(!feof($fh)){
  24. $download = fgets($fh);
  25. print $download;
  26.  
  27. //powinien wyświetlać zawartość plików znalezionych na początku
  28. }
  29. fclose($fh);
  30. ?>
  31.  
  32.  
  33. </body>
  34. </html>


Ma on za zadanie znaleźć pliki w folderze files a następnie wyświetlić je na stronie. Na razie w files znajduje się jeden plik. Bardzo proszę o sprawdzenie tego skryptu, wskazanie błędu i jeśli to możliwe wyjaśnienie jak go naprawić. Bo jak na razie to wywala błędy: http://quot22.cal.pl/artykuly/plik.php
Chciałbym też zapytać czy ten sktypt nada się, wtedy, kiedy w folderze files będzie więcej niż 1 plik?
Pozdrawiam
Go to the top of the page
+Quote Post
 
Start new topic
Odpowiedzi (1 - 4)
MateuszS
post
Post #2





Grupa: Zarejestrowani
Postów: 1 429
Pomógł: 195
Dołączył: 6.10.2008
Skąd: Kraków/Tomaszów Lubelski

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


nie nada się gdy będzie więcej niż jeden plik, wtedy while wykona się więcej razy a $file się nadpisze, nic wtedy nie wyświetli i wywali błędy jak teraz. Radzę przemyśleć jeszcze raz wszystko. Poza tym nie jestem pewny czy można otwierać plik z adresu ;P

Ten post edytował MateuszScirka 21.11.2009, 23:06:15
Go to the top of the page
+Quote Post
hawk55
post
Post #3





Grupa: Zarejestrowani
Postów: 2
Pomógł: 0
Dołączył: 23.02.2008

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


A czy mógłby mi ktoś pomóc zmodyfikować ten skrypt żeby wyświetlał wszystkie pliki z katalogu?
Go to the top of the page
+Quote Post
marcio
post
Post #4





Grupa: Zarejestrowani
Postów: 2 291
Pomógł: 156
Dołączył: 23.09.2007
Skąd: ITALY-MILAN

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


Po pierwsze uzyj glob() wtedy nie bedziesz musial uzywac 3 funckji i petli while.

Dwa to mozesz otowrzyc kazdy plik i zapisac jego zawartosci do tablicy tzn:

-Pobierasz pliki za pomoca glob().

-Robisz foreach() na znalezione pliki poprzez funkcje glob()

-Po czym otwierasz plik ale nie do zmiennej tylko do tablicy.

  1.  
  2. foreach($files as $file)
  3.  
  4.   $open[$file] = fopen($file, 'r');
  5.  
  6.   //itp dla reszty funkcji
  7.  


jedyne co mi przychodzi do glowy.

Go to the top of the page
+Quote Post
MateuszS
post
Post #5





Grupa: Zarejestrowani
Postów: 1 429
Pomógł: 195
Dołączył: 6.10.2008
Skąd: Kraków/Tomaszów Lubelski

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


Ten skrypt nawet nie chcę się zagłębiać, bo tu trzeba nowy napisać a nie przerabiać. ;p

  1. $sciezka=dirname(__FILE__);
  2. $otworz=opendir($sciezka);
  3. while($plik=readdir($otworz)) {
  4. if($plik!='..' and $plik!='.') {
  5. echo $plik.'<br />';
  6. }
  7. }
  8.  


sprawdz czy dziala bo mi sie nie chcialo ;p
skrypt wyswietla all z katalogu pliki
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: 25.09.2025 - 22:39