Witaj Gościu! ( Zaloguj | Rejestruj )

Forum PHP.pl

 
Reply to this topicStart new topic
> [php/MYSQL] Kodowanie w [CMS] Webspell, Problem z zapisem w BD polskich znakow
Xajan3981
post 28.12.2006, 00:42:25
Post #1





Grupa: Zarejestrowani
Postów: 9
Pomógł: 0
Dołączył: 16.12.2006

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


Witam.
Ostatnio robie pewna stronke w Webspellu i pojawil mi sie dosc nietypowy problem z kodowaniem znakow.

Otoz jezeli napisze newsa, komentarz czy jakiegos posta w systemie Webspell, polskie znaki sa wyswietlane w takiej formie:
ę, ó, ą, ś, ł, ż, ź, ć, ń.

Z pozoru wydaje sie ze jest wszystko okej ale w bazie danych te znaki sa zapisywane w takiej formie:
ê, ó, ±, ¶, ³, ¿, ¼, æ, ñ


I w przypadku kiedy wejdzie sie na edycje postu (newsa, artykulu itp) to wowczas wczytywane sa z bazy te znaczki i jezeli da sie zapisz, znowu sa w niej zapisywane, jako kod HTML tych znakow:
&#234, ó, &#177, &#182, &#179, &#191, &#188, &#230, &#241

(choc wyświetlane juz beda tak jak powyzej)


kodowanie mam ustawione na iso-8859-2
kodowanie mysql na utf8-polish-ci

Moje pytanie sie tyczy tego czy jest to wina php i zapisu danych do BD, czy moze wina lezy po stronie kodowanie BD. Zaznacze jednak ze uzywam na tej samej BD forum SMF i dziala bez problemu. Dlatego zwracam sie z prosba do was.

Szukalem w google o kodowaniu w Webspellu badz czy ktos ma podobny problem. I nic nieznalazlem odnosnie Webspella zas znalazlem ze nie tylko ja mam z tym problem.

Jezeli beda potrzebne jakies pliki przykladowe badz inne informacje na temat tego CMS'a by pomoc mi w rozwiazaniu tego problemu prosze pisac.

Ten post edytował Xajan3981 28.12.2006, 00:48:13
Go to the top of the page
+Quote Post
-Kulbak-
post 21.11.2007, 22:41:44
Post #2





Goście







Nie wiem czy to pomoże - ale miałem podobny problem i właśnie przed chwilą go rozwiązałem =)

Używałem formularza do zapisu danych w bazie. Stronę kodowałem w UTF-8. Bazę danych skonfigurowałem na utf8_polish_ci lub utf8_bin (dla różnych kolumn tabeli, dla testów). W obu przypadkach po wpisanu danych do formularza nie wyświetlały się one jako polskie litery, ale jako kod html (dla utf_polish_ci z wyjątkiem ó które pozostawało bez zmian, wyświetlane w oryginale) lub jakiś dziwny nawias kwadratowy (dla utf8_bin). Po odczytaniu danych z bazy i wyświetleniu ich na stronie internetowej wszystkie litery były wyświetlane jednak w obydwu przypadkach prawidłowo - nie dotyczyło to jednak wspomnianej litery ó. Zamiast niej pojawiał się znak zapytania, pomimo tego, że strona wyświetlania również była w standardzie utf-8.

Roziązanie: do formularza dodałem linijkę <meta http-equiv="content-type" content="text/html; charset=utf-8" /> - MySQL zaczął zapisywać inne symbole, a dane pobierane z bazy wyświetlane tym samym sposobem były już prawidłowe. Jest to więc problem z danymi wysyłanymi do bazy, nie z bazą.

Mam nadzieję że pomogłem =)

HOWK!
Go to the top of the page
+Quote Post

Reply to this topicStart new topic
1 Użytkowników czyta ten temat (1 Gości i 0 Anonimowych użytkowników)
0 Zarejestrowanych:

 



RSS Wersja Lo-Fi Aktualny czas: 25.06.2025 - 02:28