Witaj Gościu! ( Zaloguj | Rejestruj )

Forum PHP.pl

 
Reply to this topicStart new topic
> Enter na <br>
ano
post 8.04.2003, 17:28:04
Post #1





Grupa: Zarejestrowani
Postów: 435
Pomógł: 40
Dołączył: 16.02.2003
Skąd: Wrocław

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


Mam problem z jednym skryptem:
Użytkownik podaje jakiś wpis i ten wpis jest dodawany do pliku data.txt.
Drugi skrypt wyświetla po kolei linie z pliku data.txt. I mam tu jeden problem, jeżeli użytkownik pod czas podawanie nowego wpisu użyje entera (bo wpis pisze w textarea) to 2 skrypt się sypie.
Czy da się jakoś zamienić entery na <br> :?: :?: :?:


--------------------
Linkedin | ...
Go to the top of the page
+Quote Post
rzseattle
post 8.04.2003, 17:34:25
Post #2





Grupa: Przyjaciele php.pl
Postów: 554
Pomógł: 0
Dołączył: 4.04.2002
Skąd: Tychy

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


Kod
nl2br ( string )

Returns string with '<br />' inserted before all newlines.


--------------------
"Real children don't go hoppity-skip unless they are on drugs."
Go to the top of the page
+Quote Post
DeyV
post 8.04.2003, 20:43:26
Post #3





Grupa: Zarząd
Postów: 2 277
Pomógł: 6
Dołączył: 27.12.2002
Skąd: Wołów/Wrocław




to nie stety nie wytsarczy, gdyż jak rzseattle zacytował, w przypadku użycia tej funckji br nie zastępuje znaku nowej lini, lecz jest inserted before all newlines
Należy skorzystać np. z
$text= str_replace("n", "<br>", $text);


--------------------
"Niezależnie od tego, jakie masz osiągnięcia, ktoś Ci pomaga..."
Go to the top of the page
+Quote Post
QbAWoLNY
post 8.04.2003, 21:57:59
Post #4





Grupa: Zarejestrowani
Postów: 9
Pomógł: 0
Dołączył: 8.04.2003
Skąd: Katowice

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


Cytat
to nie stety nie wytsarczy, gdyż jak rzseattle zacytował, w przypadku użycia tej funckji br nie zastępuje znaku nowej lini, lecz jest inserted before all newlines
Należy skorzystać np. z
$text= str_replace("n", "<br>", $text);
ja robie tak jak rzseattle i mi wszystko elegancko dziala biggrin.gif


--------------------
QbA
-----------------------------------------
www.patience.xo.pl
patience@xo.pl
qbawolny@wp.pl
qbawolny@op.pl
Go to the top of the page
+Quote Post
KaMeLeOn
post 8.04.2003, 22:08:01
Post #5





Grupa: Zarejestrowani
Postów: 680
Pomógł: 0
Dołączył: 1.10.2002
Skąd: Wrocław

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


Cytat
to nie stety nie wytsarczy, gdyż jak rzseattle zacytował, w przypadku użycia tej funckji br nie zastępuje znaku nowej lini, lecz jest inserted before all newlines
Należy skorzystać np. z
$text= str_replace("n", "<br>", $text);

Zgadzam się z kolegą, ale należy jeszcze pamiętać, że w windowsowskich systemach ENTER to "rn"...
Więc:
[php:1:128005d6d7]<?php
$text= str_replace("rn", "<br>", $text);
$text= str_replace("n", "<br>", $text);
?>[/php:1:128005d6d7]


--------------------
"Czerp z innych, ale nie kopiuj ich. Bądź sobą." Michel Quoist
Go to the top of the page
+Quote Post
rzseattle
post 9.04.2003, 15:11:40
Post #6





Grupa: Przyjaciele php.pl
Postów: 554
Pomógł: 0
Dołączył: 4.04.2002
Skąd: Tychy

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


ja stosowac i to dzialac wiec po co komplikowac smile.gif

a tak powaznie to jakie sa symptomy niedoskonalosci nl2br?questionmark.gif
bo ja sie raczej nie spotkalem.


--------------------
"Real children don't go hoppity-skip unless they are on drugs."
Go to the top of the page
+Quote Post
DeyV
post 9.04.2003, 18:39:12
Post #7





Grupa: Zarząd
Postów: 2 277
Pomógł: 6
Dołączył: 27.12.2002
Skąd: Wołów/Wrocław




Niedoskonałość to zadużo powiedziane. Chodzi o to, że po funckji nl2br nadal pozostają znaki nowej lini. W większości przypadków, np. przy wyświetlaniu, jest to nawet wskazane - otrzymujemy czytelniejsze źródło.
Jednak gdy chcemy deny tekst zapisać w pliku, przy założeniu, że każda nowa linia to nowy rekord, no to wtedy skrypt by się nam rozsypał. Powód? - za dużo nowych lini. Stąd w toicowym problemie konieczne było inne rozwiązanie


--------------------
"Niezależnie od tego, jakie masz osiągnięcia, ktoś Ci pomaga..."
Go to the top of the page
+Quote Post
Seth
post 9.04.2003, 19:33:12
Post #8





Grupa: Przyjaciele php.pl
Postów: 2 335
Pomógł: 6
Dołączył: 7.03.2002

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


Mozna jeszcze tak tongue.gif :
[php:1:436a08b77c]$text = ereg_replace("(rn|n|r)", "<br />", $text);[/php:1:436a08b77c]

P.S. Czytajcie czasami komentarze pod opisami w manualu stamtad mozna wiele sie nauczyc.
Go to the top of the page
+Quote Post
GeoS
post 9.04.2003, 19:34:45
Post #9





Grupa: Zarejestrowani
Postów: 602
Pomógł: 0
Dołączył: --
Skąd: W - WA -> GRO

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


Czasem nawet wiecej niz z suchego opisu danej funkcji biggrin.gif


--------------------
Zanim zadasz pytanie, zawsze wczesniej zajrzyj do manuala ( pl.php.net/manual/pl/ ).
Szukasz skryptow - www.hotscripts.com
Go to the top of the page
+Quote Post
rzseattle
post 9.04.2003, 20:02:17
Post #10





Grupa: Przyjaciele php.pl
Postów: 554
Pomógł: 0
Dołączył: 4.04.2002
Skąd: Tychy

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


To juz wiem czemu jestem zadowolony z tej funkcji,
nie uzywam jej do niczego innego tylko do wyswietlania.

I znowu nasuwa mi sie lopatologiczne aczkolwiek logiczne (nawet nie czuje jak rymuje biggrin.gif ) pytanie. Mianowicie po co wpis do pliku czy do bazy traktowac funkcja nl2br skoro BRerki sluza praktycznie tylko do wyswietlania?questionmark.gif Czy nie powinismy uzywac tej funkcji tylko w przypadku echo i print?questionmark.gif

ps. sorki za dociekliwosc ale tak namieszliscie ze wycodzi na to zema uzyc ww funkcji na stringu ktory chce zapisac. A mi chodzilo o tym ze ma ja zastosowac na stringu wyciagnietym z pliku i w ten sposob go przygotowac do wyswietlenia. Wiec sie troche zamotalem.


--------------------
"Real children don't go hoppity-skip unless they are on drugs."
Go to the top of the page
+Quote Post
rzseattle
post 9.04.2003, 20:20:44
Post #11





Grupa: Przyjaciele php.pl
Postów: 554
Pomógł: 0
Dołączył: 4.04.2002
Skąd: Tychy

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


Cytat
przy założeniu, że każda nowa linia to nowy rekord, no to wtedy skrypt by się nam rozsypał. Powód? - za dużo nowych lini.


Sorki za moja bezmyslnosc i nieuwazne czytanie postow (nie musicie odpowiadac namoj powyzszy post).
Poprostu zawsze stosuje sql zamiast *.txt i nie mialem styku z tego typu problemami.


--------------------
"Real children don't go hoppity-skip unless they are on drugs."
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 Wersja Lo-Fi Aktualny czas: 19.07.2025 - 14:32