Witaj Gościu! ( Zaloguj | Rejestruj )

Forum PHP.pl

 
Reply to this topicStart new topic
> [php] Problem z textarea
szyneczka
post
Post #1





Grupa: Zarejestrowani
Postów: 5
Pomógł: 0
Dołączył: 19.04.2006
Skąd: Krotoszyn

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


Zrobiłam formularz dodawania danych do bazy. Dwa pola jedno to textopwy input, drugie textare. Jeśli jedno z pól zostanie wypełnione, a drugie nie ma pojawić się błąd, ale treść ma pozostać w tym drugim taka jaka była. (Podobnie jak przy wypełnianiu formularzy rejestracji jeśli pojawi się błąd pozostałe nadal pozostają wypełnione.

Problem polega na tym, że do bazy danych wszystkei treśći dostają się z uwzględnieniem takeigo filtrowania:

$dane = mysql_escape_string(htmlspecialchars($_POST["cos"]));

W momencie kiedy po ponownym odświeczreniu strony tekst wstawiany jest w taki sposób

<textarea>$dane</textarea> Wszystkie znaki ENTERU zamieniane są na \r jak się tego pozbyć?
Go to the top of the page
+Quote Post
mike
post
Post #2





Grupa: Przyjaciele php.pl
Postów: 7 494
Pomógł: 302
Dołączył: 31.03.2004

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


1. Przy wstawianiu do bazy używaj tylko , mysql_escape_string(), htmlspecialchars() jest tu niepotrzebne;
2. Przy wyjmowaniu z bazy filtruj za pomocą: stripslashes();
3. Przy wyświetlaniu dopiero dodawaj htmlspecialchars().

---
Aby znaki nowej linii przełożyć na HTMLa skorzystaj z nl2br().
Go to the top of the page
+Quote Post
szyneczka
post
Post #3





Grupa: Zarejestrowani
Postów: 5
Pomógł: 0
Dołączył: 19.04.2006
Skąd: Krotoszyn

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


No tak, ale w tym przypadku to na jedno wyjdzie. Postępuje się tylko w dwóch krokach.

Wtedy było dodanie do bazy mysql_escape_string() następnie po pobraniu stripslashes(); i przy wyświetlaniu htmlspecialchars(). Chodzi mi o końcowy efekt, a więc wyświetlanie. Tu masz trzy kroki, a u mnie jeden (bez stripslashes(); i to na razie jest nieosttne bo usuwa tylko \ z treści zmiennej).

W momencie kiedy wstawiam zmienną między <textarea>$zmienna</textarea> wszystko jest wyświetlane, ale kazdy ENTER jest zamieniany na \r

Te trzy kroki, o ktorych wspomniałaś... jak pisałam na jedno wyjdzie, bo jeśli chcę edytować jakiś tekst umieszczony w bazie danych muszę umiecić go w textarea i czy ja dodam do bazy tekst tak jak powinien byź wyświetlany czy dopiero po pobranu go przefiltruję, wyjdzie na jedno. Chyba, że się mylę?


nblr nic nie daje... :- /

Ten post edytował szyneczka 29.04.2006, 10:58:16
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: 23.08.2025 - 10:45