Maison >développement back-end >Problème PHP >La valeur du champ écrite par PHP est tronquée
1. Utilisez phpmyadmin pour créer une base de données et des tables de données
Lors de la création de la base 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" sur : "utf8_general_ci", si le champ stocke l'anglais ou des chiffres. , la valeur par défaut ça va.
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
$connection = mysqli_connect($host_name, $host_user, $host_pass);ajoutez :
mysqli_query("set character set 'utf8'");//读库 mysqli_query("set names 'utf8'");//写库et vous pourrez lire et écrire la base de données MYSQL normalement.
Lors de l'écriture du fichier de connexion à la base de données, écrivez :
$conn = mysqli_connect("$host","$user","$password"); mysqli_query("SET NAMES 'UTF8'"); mysqli_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, quelle que soit la saisie chinoise dans la base de données ou l'affichage de la page, tout sera normal.
Dans la version DW CS4, la page utf8 est générée par défaut De même, si vous écrivez d'abord le fichier de connexion à la base de données, il s'écrit :
mysqli_query("SET NAMES 'GBK'");<.>La page devrait également changer en conséquence :
<meta http-equiv="Content-Type" content="text/html; charset=gb2312" />
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!