Maison > développement back-end > Problème PHP > php écrit des caractères tronqués dans la base de données

php écrit des caractères tronqués dans la base de données

王林
Libérer: 2023-02-24 09:38:02
original
3289 Les gens l'ont consulté

php écrit des caractères tronqués dans la base de données

Presque tous les développeurs PHP ont rencontré le problème des caractères tronqués. Ci-dessous, nous présentons principalement la solution aux caractères tronqués lors de la connexion à la base de données PHP MySQL. " utf8_general_ci" ou exécutez l'instruction :

CREATE DATABASE `dbname` DEFAULT CHARACTER SET utf8 COLLATE utf8_general_ci;
Copier après la connexion

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. par défaut, c'est bien.
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 ;
Copier après la connexion

2 Utilisez PHP pour lire et écrire la base de données

Après vous être connecté à la base de données,

$connection = mysqli_connect($host_name, $host_user, $host_pass);
Copier après la connexion

. rejoindre :

mysqli_query("set character set 'utf8'");//读库
mysqli_query("set names 'utf8'");//写库
Copier après la connexion
peut lire et écrire la base de données MYSQL normalement.
L'environnement créé à l'aide de appserv-win32-2.5.10 utilise le codage utf8 par défaut lors de l'installation de ce package.

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);
Copier après la connexion

Puis lors de la création de la page, faites attention à cette phrase :

<meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
Copier après la connexion

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 le fichier de connexion à la base de données comme :

mysqli_query("SET NAMES &#39;GBK&#39;");
Copier après la connexion

, alors la page devrait également changer en conséquence :

<meta http-equiv="Content-Type" content="text/html; charset=gb2312" />
Copier après la connexion

Le contenu ci-dessus est à titre de référence uniquement !

Tutoriel recommandé :

Tutoriel vidéo PHP

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!

Étiquettes associées:
source:php.cn
Déclaration de ce site Web
Le contenu de cet article est volontairement contribué par les internautes et les droits d'auteur appartiennent à l'auteur original. Ce site n'assume aucune responsabilité légale correspondante. Si vous trouvez un contenu suspecté de plagiat ou de contrefaçon, veuillez contacter admin@php.cn
Tutoriels populaires
Plus>
Derniers téléchargements
Plus>
effets Web
Code source du site Web
Matériel du site Web
Modèle frontal