Polskie znaki w MySQL
Na wielu forach możemy spotkać się z pytaniami w stylu: "Jak ustawić polskie znaki w bazie MySQL? gdy wpisuję polskie znaki to pojawiają się krzaczki???.
Proszę o pomoc
Aby poprawnie wyświetlić polskie znaki należy pamiętać o poprawnym:
- ustawieniu kodowania oraz metody porównania napisów dla bazy danych (jeżeli chcemy zmodyfikować już istniejącą:CREATE => ALTER) :
- ustawieniu kodowania w wysyłanym nagłówku
CREATE DATABASE `nazwa_bazy` DEFAULT CHARACTER SET utf8 COLLATE utf8_unicode_ci
<meta http-equiv="Content-Type" content="text/html; charset=UTF-8" />
Powyższe ustawienia powinny już w zasadzie działać, natomiast w wielu wypadkach problem nie leży po stronie serwera MySQL tylko konfiguracją samego serwera www, php.
Jeżeli nie mamy dostępu do w/w konfiguracji "zbawieniem" się okazuje możliwość ustawienie interesującego nas kodowania połączenia:
mysql_query("SET NAMES 'utf8'");
Jeżeli jescze mamy problemy możemy pójść o krok dalej:
mysql_query("SET NAMES `utf8` COLLATE `utf8_polish_ci`");
Na koniec co jest raczej oczywiste kodowanie edytora również ustawiamy na UTF-8, co już mniej oczywiste z opcją bez BOM, szczególnie kiedy korzystamy z takich funkcji jak include lub require.
Powrót »