Witaj, Gościu O nas | Kontakt | Mapa
Wortal Forum PHPEdia.pl Planeta Kubek IRC Przetestuj się!
Wyszukiwarka

Wyszukiwarka

Aby odnaleźć interesujące Cię informacje wpisz poniżej szukane frazy:
Logowanie

Logowanie

Zaloguj się aby zobaczyć swój profil:

Polskie znaki a MySQL

  • ustawieniu kodowania dla bazy danych,
  • ustawieniu metody porównywania napisów dla bazy danych,
  • ustawieniu kodowania dla tabeli,
  • ustawieniu metody porównywania napisów dla tabeli,
  • ustawieniu kodowania w wysyłanym nagłówku,

Kodowanie oraz metodę porównywania napisów dla bazy danych zmieniamy zapytaniem:

ALTER DATABASE `nazwa_bazy` DEFAULT CHARACTER SET utf8 COLLATE utf8_unicode_ci

Kodowanie oraz metodę porównywania napisów dla tabeli zmieniamy zapytaniem:

ALTER TABLE `nazwa_tabeli` DEFAULT CHARACTER SET utf8 COLLATE utf8_unicode_ci

Kodowanie wysyłane w nagłówku ustawia się poprzez dodanie odpowiedniego kodu w sekcji HEAD dokumentu HTML.

<meta http-equiv="Content-Type" content="text/html; charset=UTF-8" />

To w zasadzie powinno sprawić że polskie znaki będą wyświetlały się poprawne, jednakże często zdarza się że nasz klient (zazwyczaj skrypt PHP), nawiązuje połączenie z baza w innym kodowaniu (spowodowane jest to konfiguracją serwera www). W takim przypadku należy ustawić odpowiednie kodowanie połączenia. Jeśli korzystamy z PDO kod będzie wyglądał mniej więcej tak:

$dbh = new PDO ('mysql:host=localhost;dbname=nazwa_bazy', 'uzytkownik', 'haslo');
$dbh -> query ('SET NAMES utf8');
$dbh -> query ('SET CHARACTER_SET utf8_unicode_ci');

Analogicznie dla rozszerzeń mysql oraz mysqli. To by było na tyle. W następnym artykule z serii "Polskie znaki w bazie danych" opiszę proces przenoszenia bazy na nowy serwer. Jeśli masz jakiekolwiek pytania to zapraszam na forum.

Informacje na podobny temat:
Wasze opinie
Wszystkie opinie uzytkowników: (3)
mysqli
Wtorek 03 Marzec 2009 9:46:49 am - Mchl

W przypadku mysqli zalecana składnia to:
$mysqli->set_charset("utf8");

Polskie znaki a MySQL
Czwartek 21 Sierpień 2008 4:54:32 pm - webdicepl

Owszem, ale nie to było ideą tego artykułu. Poza tym chciałem aby można to również zastosować używając rozszerzenia mysqli bądź mysql.

Skoro o PDO...
Poniedziałek 18 Sierpień 2008 5:57:43 pm - lbo

Skoro o PDO mowa, warto zwrócić uwagę na PDO::MYSQL_ATTR_INIT_COMMAND miast wysyłać zapytania "ręcznie".

Mentax.pl    NQ.pl- serwery z dodatkiem świętego spokoju...   
O nas | Kontakt | Mapa serwisu
Copyright (c) 2003-2024 php.pl    Wszystkie prawa zastrzeżone    Powered by eZ publish Content Management System eZ publish Content Management System