Witaj Gościu! ( Zaloguj | Rejestruj )

Forum PHP.pl

> Znaki specjalne
melior
post
Post #1





Grupa: Zarejestrowani
Postów: 68
Pomógł: 3
Dołączył: 7.12.2009

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


Witam,
Mam problem, który próbuję rozwiązać na kilka sposób, ale żadne na razie nie skutkuje.

Chodzi o zapisywanie i wczytywanie z bazy danych, a następnie wyświetlanie wyrazów ze znakami specjalnymi.

Np. ""haha'

Zapisuje mi do bazy elegancko, nie ma problemów.
Wczytuje mi również. W PHP w echo wyświetla się również poprawnie, jednak, gdy próbuję wypełnić <input type="text"> dzieją się różne rzeczy.
Nawet wiem czemu:

mając np. podany wyżej wyraz, i wstawiając go poniżej
<input type="text" value="$wyraz"> otrzymam
<input type="text" value="""haha'"> czyli nic się nie wyświetli.

Zapisując do bazy próbowałem przepuszczać to przez mysql_real_escape_string, add_slashes, htmlentities i htmlspecialchars, a nawet przy podwójnym ich zastosowaniu. No ale jak wspomniałem z zapisaniem jest ok, niezależnie jak to zrobię.

Może ktoś poradzić coś na to? Zasugerować rozwiązanie?
Dzięki z góry

Dobra już rozwiązane :] - przy wyświetlaniu opatulić zmienną htmlspecialchars

Ten post edytował melior 23.09.2010, 17:45:49
Go to the top of the page
+Quote Post
 
Start new topic
Odpowiedzi (1 - 1)
Blame
post
Post #2





Grupa: Zarejestrowani
Postów: 678
Pomógł: 124
Dołączył: 26.09.2009

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


Po pierwsze zawsze musisz zabezpieczać dane idące do bazy przed SQL Injection. Przykładowo przepuszczając tekst: "tekst" przez htmlspecialchars powinieneś dostać &quot;tekst&quot; i wtedy nie powinno być problemu z umieszczeniem tego w value. Musi działać, nie ma siły. Możesz jeszcze spróbować przepuścić tekst tą funkcją zaraz przed wyświetleniem.
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: 24.12.2025 - 10:47