Pomoc - Szukaj - Użytkownicy - Kalendarz
Pełna wersja: [PHP][AJAX] brak polskich znaków w zewnętrznym zapytaniu
Forum PHP.pl > Forum > PHP
yarek12
Witam, napisałem skrypt AJAX'a który dołącza mi do strony osobny plik php.
Skrypt wykorzystuje do podpowiedzi w wyszukiwarce, w pliku php mam klasyczną pętle while wyświetlającą rekordy z bazy na podstawie przesłanego klucza metodą GET w ajaxie.

Teraz mój problem, tylko przeglądarka chrome wyświetla polskie znaki w dołączonym pliku, inne przeglądarki takie jak ie, czy mozilla nie wyświetlają polskich znaków.

W osobnym pliku php jest umieszczony nagłówek z kodowaniem:

  1. <meta http-equiv="content-type" content="text/html; charset=ISO-8859-2">


Kodowanie jakie jest w bazie to: latin1_swedish_ci
piotr94
AJAX obsługuje tylko kodowanie UTF-8, żeby działał z ISO-xxxx-x trzeba zamieniać znaki specjalne (polskie), na "encje", poniżej lista tych potrzebnych (oczywiście zamiany należy dokonać przed przesłaniem danych do AJAX'a):
Kod
ą &# 261;
Ą &# 260;
ć &# 263;
Ć &# 262;
ę &# 281;
Ę &# 280;
ł &# 322;
Ł &# 321;
ń &# 324;
Ń &# 323;
ó &# 243;
Ó &# 211;
ś &# 347;
Ś &# 346;
ż &# 380;
Ż &# 379;
ź &# 378;
Ź &# 377;

Oczywiście encje trzeba dać bez spacji po &#, niestety na forum nie mogłem tego tak wpisać ;-)
mls
Cytat(piotr94 @ 20.06.2011, 12:38:21 ) *
AJAX obsługuje tylko kodowanie UTF-8, żeby działał z ISO-xxxx-x trzeba zamieniać znaki specjalne


A od kiedy to tak? AJAX obsługuje dowolne kodowanie i niczego nie trzeba zmieniać. Trzeba tylko wiedzieć jak poprawnie wysłać dane do przeglądarki... Nie jest to podforum "Przedszkole", więc i przykładów raczej nie ma co podrzucać bo to są podstawy...
piotr94
Cóż, ja bym mimo wszystko poprosił o działający przykład przesyłania jakiegokolwiek tekstu z polskimi znakami przez system AJAX w kodowaniu iso-8859-2 bez żadnego zmieniania polskich znaków, bo jakoś po lekturze paru stron na google nie zmieniłem swojego zdania popartego doświadczeniem z wprowadzaniem AJAX'a na stronę z kodowaniem ISO...
yarek12
Chyba źle się zrozumieliśmy, ajax przesyła polskie znaki prawidłowo.
Polskich znaków nie ma w pętli wyświetlającej

-------------
Problem rozwiązany
piotr94
To może jakiś fragment kodu?
mls
Cytat(piotr94 @ 20.06.2011, 14:59:28 ) *
To może jakiś fragment kodu?


  1. header('Content-Type: text/html; charset=iso-8859-2');

Wystarczy?
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.