Maison > Article > développement back-end > Base de données php Caractères chinois tronqués
Le problème de l'utilisation de l'encodage UTF-8 pour la base de données MYSQL
1 Utilisez phpmyadmin pour créer une base de données et une table de données
Créer une base de données Lors de la création d'une table de données, veuillez définir « Organisation » sur : « utf8_general_ci » ou exécutez l'instruction :CREATE DATABASE `dbname` DEFAULT CHARACTER SET utf8 COLLATE utf8_general_ci;Lors de la création d'une table de données : Si le champ stocke le chinois, vous devez définir « Organisation » à : " utf8_general_ci", Si le champ stocke l'anglais ou des chiffres, la valeur par défaut est correcte. L'instruction SQL correspondante, par exemple :
CREATE TABLE `test` ( `id` INT NOT NULL , `name` VARCHAR( 10 ) CHARACTER SET utf8 COLLATE utf8_general_ci NOT NULL , PRIMARY KEY ( `id` ) ) ENGINE = MYISAM ;
2. Utilisez PHP pour lire et écrire la base de données
Après vous être connecté à la base de données :$connection = mysql_connect($host_name, $host_user, $host_pass);Ajoutez deux lignes :
mysql_query("set character set 'utf8'");//读库 mysql_query("set names 'utf8'");//写库 //其实读写都可以只加入 mysql_query("set names 'utf8'");et vous pourrez lire et écrire la base de données MYSQL normalement. L'environnement utilisé est appserv-win32-2.5.10 Lors de l'installation de ce package, l'encodage utf8 par défaut est utilisé. Lors de l'écriture du fichier de connexion à la base de données, écrivez :
$conn = mysql_connect("$host","$user","$password"); mysql_query("SET NAMES 'UTF8'"); mysql_select_db("$database",$conn);Puis lors de la réalisation de la page, faites attention à cette phrase :
<meta http-equiv="Content-Type" content="text/html; charset=utf-8" />De cette façon, quel que soit le chinois saisi dans la base de données ou dans l'affichage de la page, tout est normal. Dans la version DW CS4, la page utf8 est également générée par défaut. De même, si vous écrivez d'abord le fichier de connexion à la base de données sous la forme : mysql_query("SET NAMES 'GBK'"); Ensuite, la page changera également en conséquence :
<meta http-equiv="Content-Type" content="text/html; charset=gb2312" />Pour plus de connaissances sur PHP, veuillez visiter le
Site Web PHP chinois !
Ce qui précède est le contenu détaillé de. pour plus d'informations, suivez d'autres articles connexes sur le site Web de PHP en chinois!