Bon interclassement des table sql

mistic10 Messages postés 11 Date d'inscription samedi 12 mars 2011 Statut Membre Dernière intervention 1 septembre 2012 - 25 oct. 2011 à 19:03
inwebo Messages postés 381 Date d'inscription lundi 12 novembre 2007 Statut Membre Dernière intervention 23 octobre 2014 - 26 oct. 2011 à 09:30
bonjour,

il m’arrive un petit truc bizarre, je m'explique:

je suis entrain de faire un petit formulaire dont les balises option des menus déroulant sont alimentées par ma base de donnée.

j'ai remarqué que les caractères spéciaux (é,è,à ect...) qui sortent de la BDD sont (sur firefox) remplacés par des losanges contenant un "?".

au début je pensais que c’était due au charset de ma page (iso-8859-1), que j'ai donc mis en UTF-8.

ça na pas résolu le problème, mais je me suis rendu compte que les autres caractères spéciaux de la page était correctement interprétés par FF.

j'ai donc modifier l'interclassement de mes tables sql.

j'ai testé les interclassements suivant :

[list]
[*]latin1_bin
[*]latin1_general_ci
[*]latin1_general_cs
[*]utf8_bin
[*]utf8_general_ci
/list

rien n'y fait, j'ai toujours des losanges à la place de mes caractères spéciaux dans les menus déroulant.



donc si quelqu'un connait le bon interclassement des tables sql pour éviter ce type de problème, ou une autre solution ça serai super cool.

merci d'avance.

1 réponse

inwebo Messages postés 381 Date d'inscription lundi 12 novembre 2007 Statut Membre Dernière intervention 23 octobre 2014
26 oct. 2011 à 09:30
Bonjour,

Regarde cette page si tu utilises encore les fonctions PHP mysql_*. Pour PDO cela revient pratiquement au même, ce commentaire de la doc PHP.

Juste après une connexion il faut exécuter cette requête
SET NAMES 'utf8'

Sous réserve que ta page soit en UTF8 mais également ton interclassement.


________________________________________
( $toBe || !$toBe ) = $this->Question();
0
Rejoignez-nous