Pomoc - Szukaj - Użytkownicy - Kalendarz
Pełna wersja: [AJAX][PHP]htmlspecialchars + UTF-8 duży problem
Forum PHP.pl > Forum > Przedszkole
neo1986kk
witam mam taki problem, że system komentarzy jest oparty na Ajaxie.

do bazy zapisują się komentarze z polskimi znakami zamienionymi na kody utf-8

i powiedzmy taki text: "nowe miejsce do spędzania piątkowych wieczrów" zapisuje się do bazy tak:

nowe miejsce do sp&#281dzania pi&#261tkowych wieczorów

chcąc wyświetlić ten text używam poprostu

  1. echo $text;


nie pojawiało mi się ó więc użyłem

  1. echo iconv('windows-1250','utf-8',$text);


no i teraz to wszystko jest podatne na wstrzyknięcie kodu js, i uruchomienie go.

dlatego użyłem
  1. echo htmlspecialchars(iconv('windows-1250','utf-8',$text));


ok jestem spokojny o js, ale text wyświetla się tak:

nowe miejsce do sp&#281dzania pi&#261tkowych wieczorów


już nie wiem co z tym zrobić, tak źle i tak niedobrze. Może łatwiej będzie zostawić to tak jak jest i zająć się sprawdzeniem danych przed zapisem do bazy?

Ulysess
zawsze możesz dać przed wyświetleniem $text = htmlspecialchars($text);

PS pliki masz w formacie UTF 8 i czy przy połączeniu z bazą masz mysql_query('SET NAMES utf8'); questionmark.gif
neo1986kk
pliki w utf-8
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.