Php/phpmyadmin - Prob.Affichage
the_jb
Messages postés
731
Statut
Membre
-
the_jb Messages postés 731 Statut Membre -
the_jb Messages postés 731 Statut Membre -
Bonjour, Quand je fais afficher des données de ma base, il ne veut pas afficher les caractères spéciaux. comme "é" "&" "à"
Par contre quand j'écris "terminé" sur la même page en brute dans le code, il me le marque sans soucis...
Charset de la page est en iso-8859-1
La base de données en UTF-8
si je met la page en UTF-8 ça ne m'affiche plus les à de la base de données
Si vous avez une réponse à mon problème !
Merci
Par contre quand j'écris "terminé" sur la même page en brute dans le code, il me le marque sans soucis...
Charset de la page est en iso-8859-1
La base de données en UTF-8
si je met la page en UTF-8 ça ne m'affiche plus les à de la base de données
Si vous avez une réponse à mon problème !
Merci
9 réponses
-
Bonjour
Problème classique d'encodage. Tu n'es pas cohérent entre :
. l'encodage de l'éditeur avec lequel tu crées tes pages
. l'encodage déclaré (ou pas) dans les balises meta de tes pages
. l'encodage utilisé pour les tables de ta base de données
et peut-être aussi (si tu utilises utf-8) dans les fonctions que tu utilises pour manipuler les chaînes
et peut-être autre chose que j'oublie.
Devant le nombre de raisons possibles, il n'y a pas de recette simple qui résoud tout dans tous les cas.
Il faut choisir un encodage, et en tenir compte à tous les niveaux de la création des pages, des échanges avec la base de données et de la manipulation des chaînes. -
Ok j'en tiens compte, j'ai passé tout mes pages en UTF-8 mais l'affichage est encore plus monstrueux. Pourtant mes pages sont en UTF-8 ainsi que la base de données.
Je cherche toujours =( -
J'ai passé ma BDD en ANSII, mis mes pages en ISo-8859-1 et les convertis en ANSII et la c'est l'inverse, le texte brute s'affiche mal et les données de la base s'affiche très bien.
Faut trouver le juste milieu !
Snif !
Je deviens fou ! -
Faut trouver le juste milieu !
Il n'y a pas de juste milieu. Là, il faut être intégriste ;) si tu veux que tout soit cohérent.
Sais-tu ce que tu as réellement fait en passant at BDD en ANSII ? L'encodage ANSII n'existe pas, tu sembles mélanger ANSI (inconnu de mysql) et ASCII.
Comment as-tu fait pour passer tes pages en iso-8859-1 ? Tu as ajouté une balise meta sans doute, mais ça ne suffit pas. Cette balise n'est qu'une déclaration destinée au navigateur, encore faut-il que tes pages soient réellement écrites en iso-8859-1. Pour ça, il faut utiliser le bon encodage pour l'éditeur qui te sert à écrire tes pages. D'après ce que tu décris, ton problème serait à ce niveau. -
Vous n’avez pas trouvé la réponse que vous recherchez ?
Posez votre question -
j'utilise notepad pour convertir mes pages. seulement je peux préciser dans l'en-tete des pages autre chose.
Alors ça marche en mettant la base en UTF-8, les fichiers converti en ANSI et le charset des pages en ISO-8859-1
Seulement j'envoi un mail automatique et celui ci a les caractères bizarres, mais sur mon appli web je n'ai plus de soucis d'affichage. -
Alors ça marche en mettant la base en UTF-8, les fichiers converti en ANSI et le charset des pages en ISO-8859-1
Tu mélanges les encodages... Ce n'est pas interdit quand on sait ce qu'on fait. C'est toi qui vois. Bon courage. -
Je mélange mais ça marche pour mon appli. Je suis entrain de voir pour l'envoi de mail par fichier txt comme ça le probleme sera résolu.
-
ça marche pour mon appli.
Même quand tu vas consulter ta base de données avec phpMyAdmin
C'est très bien alors. Bonne continuation. -
oui meme quand je la consulte. Merci, je bloque sur l'envoi de mail que j'avais deja reussi à faire u_u. Bref je bidouille le code