Regels als je problemen hebt met tekensets:
-
Gebruik tijdens het maken van de database utf8-codering:
CREATE DATABASE _test DEFAULT CHARACTER SET utf8 COLLATE utf8_general_ci;
-
Zorg ervoor dat alle tekstvelden (varchar en tekst) UTF-8 gebruiken:
CREATE TABLE _test.test ( id INT NOT NULL AUTO_INCREMENT, name VARCHAR(255) CHARACTER SET utf8 COLLATE utf8_general_ci NOT NULL, PRIMARY KEY (`id`) ) ENGINE = MyISAM;
-
Als u verbinding maakt, doet u dit voordat u de database opvraagt/bijwerkt:
SET NAMES utf8;
-
Met phpMyAdmin - Kies UTF-8 wanneer u inlogt.
-
stel de codering van webpagina's in op utf-8 om ervoor te zorgen dat alle post/get-gegevens in UTF-8 staan (anders moet u dat doen omdat converteren pijnlijk is...). PHP-code (eerste regel in het php-bestand of in ieder geval vóór enige uitvoer):
header('Content-Type: text/html; charset=UTF-8');
-
Zorg ervoor dat al uw zoekopdrachten zijn geschreven in UTF8-codering. Bij gebruik van PHP:
6.1. Als PHP code in UTF-8 ondersteunt, schrijft u uw bestanden gewoon in UTF-8.
6.2. Als php is gecompileerd zonder UTF-8-ondersteuning, converteer je strings dan als volgt naar UTF-8:
$str = mb_convert_encoding($str, 'UTF-8', '<put your file encoding here');
$query = 'SELECT * FROM test WHERE name = "' . $str . '"';
Dat zou het moeten laten werken.