Pomoc - Szukaj - Użytkownicy - Kalendarz
Pełna wersja: Znaki specjalne
Forum PHP.pl > Forum > PHP
melior
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
Blame
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.
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.