Mysql kódolás és krakozyably
Ezt a kérelmet ellenőrizni kell a forgatókönyvet, de nem phpmyadmin, ahol más paramétereket lehet beállítani
- character_set_client - kódolás, amely adatokat az ügyféltől kapott
- character_set_connection - az alapértelmezett mindent a vegyület nem kódoló
- character_set_database - alapértelmezett kódolást az adatbázisban
- character_set_filesystem - fájl kódolása rendszer (LOAD DATA INFILE, SELECT ... INTO OUTFILE stb)
- character_set_results - kódolás, amelyben az eredmény lesz kiválasztva
- character_set_server - kódolás, ahol a szerver fut
- character_set_system - MySQL azonosítók mindig UTF8
- character_sets_dir - mappa kódolások
Alapértelmezésben telepítése után mysql szerver, ami telepítve lusta tárhelyszolgáltatóval \ admin van kódolva latin1. Ennek megfelelően a globális változók a fent felsorolt lesz latin1. Az alapértelmezett bázis, illetve, és egy asztal is. És ez az, amit meg kell fizetni az elején kell figyelni, hogy a problémákat nem felszínre később.
Ideális esetben meg kell hozni minden jelentős színkódokkal egyetlen érték. Akkor mi csak lesz kímélni a kisebb hibákat kódolás. Sőt, ha dolgozunk a tárhely, akkor (3) és (6) nem tudjuk befolyásolni. De ez nem ijesztő, ha úgy konfigurálja a másik három paramétert. Mysql Umet átkódoljon röptében megfelelően beállított kódolási kapcsolatot.
Végül, a fő kérdés az, hogy mit kell tenni, ha az egyik mysql táblázatok (vagy több), a rossz kódolás és a honlap látható krakozyably \ voprosiki?
1. Határozzuk meg a kódolási táblázat.
mysql> SHOW CREATE TABLE `files`
CREATE TABLE `files` (
`Id` int (10) unsigned NOT NULL AUTO_INCREMENT.
`INode` int (10) unsigned NOT NULL.
`Pid` int (10) unsigned NOT NULL.
`SName` varchar (128) karakterkészletet latin1 COLLATE latin1_general_ci NOT NULL.
`STitle` varchar (128) karakterkészletet utf8 LEVÁLOGAT utf8_general_ci NOT NULL.
PRIMARY KEY ( `id`).
KEY `iNode` (` iNode`)
) MOTOR = MyISAM DEFAULT CHARSET = utf8
Ebben a táblázatban a mező SNAME kódolt latin1, ha megvan a kapcsolat a különböző kódolás, látni fogjuk, halandzsa.
2. Ezért a következő megvizsgálja a kódoló vegyület, sql lekérdezés SHOW változók, így például „character_set_client”. Megjegyezzük, hogy php mysqli_client_encoding () függvényt. Mi nem fog működni, mert meg csak a kódolás idején kapcsolatot.
3. Ha a kódoló vegyület nem egybeesett a kódolás egyik mező az asztal, a két nyilvánvaló választás.
Ha van az összes asztal egy kódolás, akkor könnyebb változtatni a kódolás a kapcsolatot.
De hogyan erősít a hibás kódolás tábla területén?
Teljesíteni ezt a kérést 2