Witaj Gościu! ( Zaloguj | Rejestruj )

Forum PHP.pl

> [PHP] zmiana końca lini na tag
kylo1989
post
Post #1





Grupa: Zarejestrowani
Postów: 4
Pomógł: 0
Dołączył: 14.12.2010

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


Witam wszystkich, mam skrypt php który edytuje plik tekstowy (znaleziony chyba nawet na tym forum)
  1. <?php
  2. $katalog = opendir("./");
  3. while ($plik = strtolower(readdir($katalog))) {
  4. if ($plik<>"." && $plik<>".." && $plik<>"edytuj.php" ) $lista[]=$plik;
  5. }
  6. closedir($katalog);
  7. if (count($lista)>0) {
  8. echo "Wybierz plik do edycj:";
  9. sort($lista);
  10. }
  11.  
  12. for ($i=0;$i<count($lista);$i++) {
  13. echo "<br />Edytuj plik <b>$lista[$i]</b> <a href=\"edytuj.php?edycja=$lista[$i]\">Edytuj</a>";
  14. }
  15.  
  16.  
  17. // zmiana zawartosci pliku
  18. $edycja = $_REQUEST["edycja"];
  19. if (isset($_POST["tekst"]) && file_exists($edycja)) {
  20. $f = fopen($edycja, "w");
  21. fputs($f, stripslashes($_POST["tekst"]));
  22. fclose($f);
  23. }
  24.  
  25.  
  26.  
  27. // umieszczenie pliku w formularzu
  28. if ($edycja<>"" && file_exists($edycja)) {
  29. echo "<p> </p>Edycja plik: <b>$edycja</b>";
  30. echo '<form action="edytuj.php" method="post"><input type="hidden" name="edycja" value="'.$edycja.'" /><textarea name="tekst" rows="25" cols="80">';
  31. $f = fopen($edycja,"r");
  32. while(!feof($f)) echo fread($f,1024);
  33. fclose($f);
  34. echo '</textarea><input type="submit" value="Zapisz" /></form>';
  35. }
  36. ?>



skrypt używam do edycji plików txt które potem wczytuje do flasha, tworzy on jednak podwójne przerwy między liniami tzn. przy zapisie do pliku tekstowego:
1
2

flash wyświetli:
1

2

dlatego chce zmienic znak końca lini na <br>, poszukałem i wiem już że służy do tego funkcja:
  1. $str = str_replace("\r", '', $str);
  2. $str = str_replace("\n", '<br>', $str);


zmieniłem ten fragment:
  1. // zmiana zawartosci pliku
  2. $edycja = $_REQUEST["edycja"];
  3. $tekst = str_replace("\r", '', $tekst);
  4. $tekst = str_replace("\n", '<br>', $tekst);
  5. if (isset($_POST["tekst"]) && file_exists($edycja)) {
  6. $f = fopen($edycja, "w");
  7. fputs($f, stripslashes($_POST["tekst"]));
  8. fclose($f);
  9. }


ale niestety nie działa, pliki dalej posiadają wadliwe linie, próbowałem wielu kombinacji ale podjerzewam że problem jest w nazwie zmiennej która jest edytowana,
proszę o jakąś poradę
Go to the top of the page
+Quote Post
 
Start new topic
Odpowiedzi (1 - 2)
Cysiaczek
post
Post #2





Grupa: Moderatorzy
Postów: 4 465
Pomógł: 137
Dołączył: 26.03.2004
Skąd: Gorzów Wlkp.




http://php.net/manual/en/function.nl2br.php


--------------------
To think for yourself you must question authority and
learn how to put yourself in a state of vulnerable, open-mindedness;
chaotic, confused, vulnerability, to inform yourself.
Think for yourself. Question authority.
Go to the top of the page
+Quote Post
kylo1989
post
Post #3





Grupa: Zarejestrowani
Postów: 4
Pomógł: 0
Dołączył: 14.12.2010

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


dlatego pisze to w tym dziale ponieważ nie wiele wiem na temat PHP, więc ten link nie wiele mi daje
sama funkcja jest chyba dobrze, może jest w złym miejscu lub złą zmienną używam?

Ten post edytował kylo1989 14.12.2010, 13:49:05
Go to the top of the page
+Quote Post

Reply to this topicStart new topic
1 Użytkowników czyta ten temat (1 Gości i 0 Anonimowych użytkowników)
0 Zarejestrowanych:

 



RSS Aktualny czas: 19.08.2025 - 20:13