Pomoc - Szukaj - Użytkownicy - Kalendarz
Pełna wersja: Błąd podczas odczytu z pliku?
Forum PHP.pl > Forum > Przedszkole
raymon
Witam smile.gif
Mam taki kod:
  1. <?php
  2. $tablica=file("wyrazy.txt");
  3. foreach($tablica as $key => $wyraz){
  4. $tresc="czesc";
  5. $fd = fopen("$wyraz.html", 'w');
  6. fwrite($fd, $tresc);
  7. fclose($fd);
  8. }
  9.  
  10. ?>

Ma on utowrzyć pliki html, a nazwy dla nich ma pobrać z pliku tekstowego wyrazy.txt, jednak problem polega na tym że pobiera mi tylko ostatni wyraz w pliku tekstowym, i wyskakuje taki błąd:
Cytat
Warning: fopen(plik-drugi .html) [function.fopen]: failed to open stream: Invalid argument in c:\wamp\test\index.php on line 5
Warning: fwrite(): supplied argument is not a valid stream resource in c:\wamp\test\index.php on line 6
Warning: fclose(): supplied argument is not a valid stream resource in c:\wamp\test\index.php on line 7
Warning: fopen(plik-trzeci.html) [function.fopen]: failed to open stream: No such file or directory in c:\wamp\test\index.php on line 5
Warning: fwrite(): supplied argument is not a valid stream resource in c:\wamp\test\index.php on line 6
Warning: fclose(): supplied argument is not a valid stream resource in c:\wamp\test\index.php on line 7

O co z tym chodzi?
nowotny
Wiersze pobrane z pliku zawierają znaki końca lini... jak wiadomo, nazwa pliku nie może zawierać znaku końca lini... użyj trim" title="Zobacz w manualu PHP" target="_manual na zmiennej $wyraz...
raymon
teraz mam taki kod:
  1. <?php
  2. $tablica=file("wyrazy.txt");
  3. foreach($tablica as $key => $wyraz){
  4. $tresc="czesc";
  5. $fd = fopen(trim($wyraz).html, 'w');
  6. fwrite($fd, $tresc);
  7. fclose($fd);
  8.  
  9. }
  10.  
  11. ?>

działa, ale nazwa pliku wyglada tak: plik-jedenhtml zamiast plik-jeden.html, jak moge to zmienić
Kowalikus
  1. <?php
  2. $tablica=file("wyrazy.txt");
  3. foreach($tablica as $key => $wyraz){
  4. $tresc="czesc";
  5. $fd = fopen(trim($wyraz) . '.html', 'w');
  6. fwrite($fd, $tresc);
  7. fclose($fd);
  8.  
  9. }
  10.  
  11. ?>


kropka '.' to operator łączenia łańcuchów znaków.
raymon
Wielki dzięki, działa jak należy smile.gif Szkoda że nie mogę dać punktu pomógł, bo dostałbyś go bez problemu smile.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.