Menu

Php n'affiche pas les infos de la bdd si un accent est présent [Résolu/Fermé]

Messages postés
233
Date d'inscription
dimanche 16 novembre 2008
Statut
Membre
Dernière intervention
22 août 2017
-
Bonjour,

J'ai donc ce code pour reprendre les informations de ma base de donnée :
<?php 
//On verifie que lidentifiant de lutilisateur est defini 
if(isset($_GET['id'])) 
{ 
        $id = intval($_GET['id']); 
        //On verifie que lutilisateur existe 
        $dn = mysql_query('select id, pseudo, date, presentation, rang, avatar from membre where id="'.$id.'"'); 
        if(mysql_num_rows($dn)>0) 
        { 
                $dnn = mysql_fetch_array($dn); 
                //On affiche les donnees de lutilisateur 
?>


Là, tout va bien. Le problème est ici :
<?php echo htmlentities($dnn['presentation'], ENT_QUOTES, 'UTF-8'); ?>


Il n'affiche rien si un "é", "è", "à", ou autre caractère de ce type est présent dans la base de donnée. Mais affiche bien les informations si aucun caractère de ce type est présent.

Que dois-je faire pour corriger cela ?
Afficher la suite 

3 réponses

Messages postés
991
Date d'inscription
mercredi 20 février 2013
Statut
Membre
Dernière intervention
24 novembre 2018
91
0
Merci
Ca ressemble bien à un soucis d'encodage, essai de mettre les balise <meta> dans ta page , ou un header pour que tout soit encodé en UTF8
rolly41
Messages postés
233
Date d'inscription
dimanche 16 novembre 2008
Statut
Membre
Dernière intervention
22 août 2017
2 -
Ceci est pour toute les pages :
<meta http-equiv='Content-Type' content='text/html; charset=utf-8'>


Mais le même résultat
0
Merci
fais un var_dump($dnn) pour voir ce que vaut le data quand il y a un accent et quand il y en a pas .
rolly41
Messages postés
233
Date d'inscription
dimanche 16 novembre 2008
Statut
Membre
Dernière intervention
22 août 2017
2 -
avec le var_dump j'ai ce résultat : string 'Aucune pr?sentation' (length=19)
Messages postés
233
Date d'inscription
dimanche 16 novembre 2008
Statut
Membre
Dernière intervention
22 août 2017
2
0
Merci
Voici des informations sur la base de données :

Jeu de caractères pour MySQL: UTF-8 Unicode (utf8)
Interclassement pour la connexion MySQL : utf8_general_ci
Interclassement des table : utf8_unicode_ci
Interclassement des champs de chaque tables : utf8_general_ci
rolly41
Messages postés
233
Date d'inscription
dimanche 16 novembre 2008
Statut
Membre
Dernière intervention
22 août 2017
2 -
En localhost, j'ai supprimé , ENT_QUOTES, 'UTF-8' du code
<?php echo htmlentities($dnn['presentation'], ENT_QUOTES, 'UTF-8'); ?>


Et cela fonctionne.

La même base, avec les même tables et les même données avec les même page php ne fonctionne pas sur mon site ... je n'ai rien si un accent est présent.