Witaj Gościu! ( Zaloguj | Rejestruj )

Forum PHP.pl

> Problem z kodowaniem znaków w MySQL
Zagiewa
post
Post #1





Grupa: Zarejestrowani
Postów: 84
Pomógł: 0
Dołączył: 12.08.2009

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


Witam. Mam problem związany z kodowaniem znaków, a konkretniej mówiąc z ich wyświetlaniem. Cała strona używa kodowanie ISO-8859-2. Do tej pory tworząc tabele w phpmyadmin nie zwracałem uwagi na to jakie kodowanie stosuje do swoich tabel - po prostu działały. Obecnie po utworzeniu tabeli, dodałem rekord z treścią gdzie oczywiście znalazły się polskie ogonki (ą, ę, ł, ć, itd.) Gdy pobieram dane z bazy i wyświetlam do strony widzę kleksy (IMG:style_emoticons/default/sad.gif) Bawiłem się, ze zmianami kodowania znaków w bazie na utf8_polska_ci i latin2_general_ci ale bez skutku (zmieniałem zarówno kodowanie całej tabeli jak i poszczególnych rekordów) i bez skutku. Wiecie co może być nie tak?

Byłbym wdzięczny za jakąś poradę.
Go to the top of the page
+Quote Post
 
Start new topic
Odpowiedzi
emmix
post
Post #2





Grupa: Zarejestrowani
Postów: 2
Pomógł: 0
Dołączył: 16.11.2010

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


Gdy ja walczyłem z polskimi znakami pomógł mi artykuł:
http://tosiek.pl/o-co-chodzi-z-latin1-i-dl...-polskie-znaki/

Zrobiłem na początku PHP

ini_set('default_charset', 'UTF-8');

a potem ustawienie kodowania dla połączenia z mysql
$pdo = new PDO($dsn, $user, $password, array(PDO::MYSQL_ATTR_INIT_COMMAND => "SET NAMES latin1"));

Najbardziej zdziwiło mnie, że kodowanie latin1, ISO-8859-1 nie obsługuje polskich znaków ani nie istnieją one w tym kodowaniu (IMG:style_emoticons/default/smile.gif)


Oczywiście Ty możesz mieć inne kodowania, ale może coś zadziała.
Ogólnie jednym jest kodowanie w bazie, a jeszcze innym kodowanie połączenia. To potrafi się zmieniać nawet w zależności od hostingu.

Go to the top of the page
+Quote Post

Posty w temacie


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: 4.10.2025 - 13:34