Maison > base de données > tutoriel mysql > Comment stocker et afficher correctement du texte hindi à l'aide de PHP et MySQL ?

Comment stocker et afficher correctement du texte hindi à l'aide de PHP et MySQL ?

Mary-Kate Olsen
Libérer: 2024-11-28 18:17:14
original
183 Les gens l'ont consulté

How to Properly Store and Display Hindi Text Using PHP and MySQL?

Stockage et affichage de chaînes Unicode (हिन्दी) à l'aide de PHP et MySQL

Problème :
L'utilisateur rencontre des difficultés pour stocker et afficher l'hindi texte dans une base de données MySQL en utilisant PHP. Le texte apparaît comme "???????" lorsqu'il est récupéré et repris à l'aide de utf8_encode().

Solution :
Pour résoudre le problème, les étapes suivantes doivent être suivies :

  1. Définir le codage de la base de données : assurez-vous que le codage et le classement de la base de données sont tous deux définis sur UTF-8. Cela se fait en exécutant la requête "SET NAMES utf8" avant toute opération de base de données.
  2. Spécifiez le jeu de caractères dans la base de données : lors de la création de la table et du champ qui stockeront le texte hindi, spécifiez le caractère défini comme UTF-8.
  3. Définir l'encodage de la page : dans la section d'en-tête HTML de votre page PHP, ajoutez une méta balise pour définir l'encodage de la page sur UTF-8 :
<meta http-equiv="Content-Type" content="text/html;charset=UTF-8">
Copier après la connexion
  1. Définir l'en-tête du type de contenu : Vous pouvez également définir le type de contenu dans votre script PHP en utilisant :
header('Content-Type: text/html; charset=utf-8');
Copier après la connexion
  1. Exemple de script PHP : Le script PHP suivant démontre le processus :
<?php
include("connection.php"); // Include database connection
mysql_query("SET NAMES utf8"); // Set database character set
$result = mysql_query("select * from hindi"); // Fetch data from the database
while ($myrow = mysql_fetch_row($result)) {
    echo ($myrow[0]); // Echo the Hindi text
}
?>
Copier après la connexion
  1. Table de base de données : La structure de la table de base de données devrait ressembler à ceci :
CREATE TABLE `hindi` (
  `data` varchar(1000) character set utf8 collate utf8_bin default NULL
) ENGINE=InnoDB DEFAULT CHARSET=latin1;
Copier après la connexion

Notes supplémentaires :

  • L'utilisateur a également posé des questions sur un script potentiel à convertir Texte hindi en entités HTML. Cependant, il n'existe pas de script de ce type dans la solution fournie.
  • L'utilisateur a demandé comment fonctionnait le script PHP sans spécifier le "META" ou les informations d'en-tête. Cependant, la solution proposée implique de définir le jeu de caractères à la fois dans le script PHP et dans la section d'en-tête HTML, ce qui est essentiel pour afficher correctement le texte hindi.

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!

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
Derniers articles par auteur
Tutoriels populaires
Plus>
Derniers téléchargements
Plus>
effets Web
Code source du site Web
Matériel du site Web
Modèle frontal