Probleme html accentuation transformée en ?

Résolu/Fermé
alex012 Messages postés 87 Date d'inscription mardi 12 février 2013 Statut Membre Dernière intervention 28 août 2021 - 5 mars 2013 à 00:18
alex012 Messages postés 87 Date d'inscription mardi 12 février 2013 Statut Membre Dernière intervention 28 août 2021 - 9 mars 2013 à 21:16
Bonjour,
je suis en train de faire un site, mais j'ai un problème je suis en "utf-8" et toutes les accentuations sonts transformées en ? le é pour le é marche mais je voudrais ne plus avoir a l'écrire.
j'ai chercher sur plusieurs forums mais aucun n'a résolue mon probleme
merci d'avance pour vos réponses


A voir également:

9 réponses

theshadoo Messages postés 786 Date d'inscription samedi 26 mai 2007 Statut Membre Dernière intervention 3 mai 2016 123
Modifié par theshadoo le 5/03/2013 à 00:50
regarde cet article problème encodage utf8

regarde à la fin tu comprendras pourquoi je pense
0
alex012 Messages postés 87 Date d'inscription mardi 12 février 2013 Statut Membre Dernière intervention 28 août 2021
Modifié par alex012 le 5/03/2013 à 01:10
Ok merci, je vais voir ça demain avec l'Ordinateur, et je vais vous dire si sa a marcher, sa doit etre l'hebergeur qui est en iso
merci
0
Utilisateur anonyme
5 mars 2013 à 09:38
Bonjour

sa doit etre l'hebergeur qui est en iso
Non, un hébergeur n'est ni en iso, ni en truc ni en machin. Ce sont tes fichiers qui le sont.
Visiblement, tu as mis une balise disant que ta page est en utf8 alors que toi, tu l'as écrite en iso.
C'est l'éditeur de texte avec lequel tu écris tes pages qui crée ces pages en iso ou en utf8. Il y a quelque part dans les menus une option qui te permet de le choisir.
Et la balise que tu mets dans une page html ne change pas l'encodage de la page : elle sert seulement à dire au navigateur quel encodage tu as utilisé. Mais si tu l'as écrite en iso et que tu dis au navigateur que c'est de l'utf8, il ne peut pas l'afficher correctement. C'est à toi de mettre la balise qui reflète l'encodage réel de ta page, qui n'est déterminé (je me répète) que par ton éditeur de texte.
0
alex012 Messages postés 87 Date d'inscription mardi 12 février 2013 Statut Membre Dernière intervention 28 août 2021
8 mars 2013 à 22:57
j'ai tout changer, si j ecris direct dans la page sa s'encode bien mais si je passe par mysql sa fait comme avant (il est en :"utf8_general_ci")
merci
0

Vous n’avez pas trouvé la réponse que vous recherchez ?

Posez votre question
Utilisateur anonyme
9 mars 2013 à 09:22
As-tu bien mis un "SET NAMES 'UTF8'" après avoir sélectionné ta base de données ?
0
alex012 Messages postés 87 Date d'inscription mardi 12 février 2013 Statut Membre Dernière intervention 28 août 2021
9 mars 2013 à 19:22
j'ai fait comme ca
<?php
try
{
    $bdd = new PDO('mysql:host=localhost;dbname=admin', 'root', '')

SET NAMES 'UTF8'
}

catch(Exception $e)
{
        die('Erreur : '.$e->getMessage());
}
 
$reponse = $bdd->query('SELECT * FROM news');

 
while ($donnees = $reponse->fetch())

{
?>
    
    <h1 id="sectitre">é<?php echo $donnees['titre']; ?></h1>
    <p><?php echo $donnees['contenu']; ?>
   </p>
<?php
}
$reponse->closeCursor();
?>

et sa ne marche pas j'ai essayait d'autres endroits sa ne marche pas non plus
ou faut il le placer?
merci
0
erreur de topic désolé!
0
MrYAU31 Messages postés 3808 Date d'inscription samedi 23 février 2013 Statut Membre Dernière intervention 8 juillet 2017 1 611
9 mars 2013 à 19:39
Bonjour,

Le SET NAMES 'UTF8' est une requête pour indique au moteur MySQL que tu es en UTF8.
Il faut donc faire
$bdd->query("SET NAMES 'UTF8'");

avant ton
$reponse = $bdd->query("SELECT * FROM news");
0
alex012 Messages postés 87 Date d'inscription mardi 12 février 2013 Statut Membre Dernière intervention 28 août 2021
9 mars 2013 à 21:16
ok merci j'ai fait ca sa fonctionne maintenant
0