Problème de "e dans l'o"

Résolu/Fermé
Ysabe_l Messages postés 12464 Date d'inscription vendredi 12 avril 2013 Statut Contributeur Dernière intervention 6 mai 2024 - 18 avril 2013 à 16:03
Ysabe_l Messages postés 12464 Date d'inscription vendredi 12 avril 2013 Statut Contributeur Dernière intervention 6 mai 2024 - 19 avril 2013 à 08:08
Bonjour à tous,

Je vous explique mon soucis.

J'ai une base de données dont l'interclassement est "latin1_general_ci" à laquelle je ne peux pas toucher (sinon je l'aurais mise en utf8 et je pense que mon soucis serait résolu).

A partir d'un champ de cette base de données je dois créer dans une page php (qui elle est en utf8 sinon ce n'est pas drôle) une liste déroulante.

Au départ j'avais bien évidemment des soucis avec tous les caractères accentués, soucis qui a été réglé rapidement avec un petit "utf8_encode($var)".

Mais dans mes valeurs retournées j'ai un mot contenant le e dans l'o et c'est bien lui le soucis car il ne veut pas s'afficher (le vilain ^^), il me montre un joli petit carré avec un espèce de ooqc écrit dedans.

Et c'est là que vous allez bien sur pouvoir m'aider en me disant comment régler ce soucis d'affichage (oui oui je vous fait confiance il y a bien quelqu'un qui pourra m'aider). Ça fait un moment que je cherche sur le net, j'ai trouvé des infos intéressantes (notamment pourquoi ce caractère posait beaucoup de soucis, tout ça à cause d'une imprimante tsss) mais pas comment régler mon problème à moi.

Je vous remercie d'avance :) .

Ysabe_l

3 réponses

Utilisateur anonyme
18 avril 2013 à 21:13
Bonjour

Le œ n'existe pas dans le jeu de caractère Latin1, tu ne l'auras pas directement.
Par contre, l'entité html œ ne devrait pas poser de problème.
0
Ysabe_l Messages postés 12464 Date d'inscription vendredi 12 avril 2013 Statut Contributeur Dernière intervention 6 mai 2024 274
18 avril 2013 à 21:20
Merci,

Donc si je comprends bien il va falloir que j'ajoute quelque part dans le code qu'il faut qu'il modifie ce caractère pour l'afficher correctement.

Je testerai tout ça demain à mon stage. Merci beaucoup.
0
J'avais eu ce problème un temps.

C'est configurable dans ta requête SQL, avec PDO t'as une option qui te permet de spécifier ton encodage par exemple.
0
Ysabe_l Messages postés 12464 Date d'inscription vendredi 12 avril 2013 Statut Contributeur Dernière intervention 6 mai 2024 274
18 avril 2013 à 22:26
Le problème c'est qu'étant en stage je ne suis pas 100% libre et il ne veut pas utiliser PDO mais Mysql, je sais c'est vieux, c'est pas top, mais je dois respecter ses choix. D'ailleurs ça m'a déjà cassé les pieds plus d'une fois.

Je vais essayer de voir si je ne peux pas faire une petite entorse là dessus et utiliser PDO si ça fonctionne, parce que passer du temps non pas sur le travail que je dois faire mais sur une bêtise d'affichage de caractère c'est pas génial (et le travail à faire après est un vrai petit défi).

Merci à tous de vos réponses.

Je passerait en résolu demain si il n'y a pas de solution avec mes contraintes (après tout c'est pas que ce n'est pas possible c'est plutôt la faute à mes contraintes).
0
Utilisateur anonyme
18 avril 2013 à 23:04
il ne veut pas utiliser PDO mais Mysql,
Ce n'est pas un problème, PDO n'est pas une base de données différentes de MySQL : PDO n'est qu'une interface. On l'utilise très couramment avec MySQL.

PDO a un certain nombres d'avantages, mais en ce qui concerne l'encodage, je ne vois vraiment pas ce que PDO apporte par rapport aux fonctions mysql_ traditionnelles.
0
Ysabe_l Messages postés 12464 Date d'inscription vendredi 12 avril 2013 Statut Contributeur Dernière intervention 6 mai 2024 274
19 avril 2013 à 08:08
Bonjour,

Je sais que ce n'est pas un changement de bases de données, en fait mon interrogation était plutôt "est-ce qu'on peut dans un même code d'une même page utiliser du PDO et des fonctions mysql_ ?" puisque la fonction sur laquelle je travaille sera intégrée à plusieurs autres pages sur lesquelles il utilise cette notation. Et du coup je viens de tester et la réponse est oui, ça fonctionne.

Cela dit pour le soucis de départ de l'e dans l'o ce n'est pas grave je peux laisser comme ça, pour les tests j'ai une base avec un mot qui le contient mais dans le futur il sera utilisé sans donc pas besoin de s'en préoccuper.

Merci de votre aide, je passe en résolu.
0