OVH Community, votre nouvel espace communautaire.

mysql données erronées


debussy007
19/01/2011, 00h00
Bonjour,

  • Exécute le query SQL suivant avant toute autre requête vers la DB:
    SET NAMES 'utf8'
  • Ajoute ce code PHP avant l'affichage de ta page:
    header("content-type: text/html; charset=utf-8");
  • Sauvegarde tes scripts PHP qui affichent les données en UTF-8 Without BOM (par exemple à l'aide de Notepadd++)
  • Ajoute la balise méta suivante dans ta page:
    (syntaxe HTML 4.01, à adapter en fonction de ton DocType)
  • Vérifie dans ta BD que l'interclassement pour la connexion est utf8_encode_ci ainsi que l'interclassement de tes champs textes (VARCHAR, CHAR, TEXT, etc.) dans tes tables MySql

Bosse-cie
23/12/2010, 15h37
Bonjour,

J'ai chez moi, en local, une base de données que je modifie par script php...
J'ai copié cette base de données sur ovh, ainsi que tous mes scripts.

Lors d'un de ces scripts, je fais lire plusieurs tables et afficher certaines de leurs données.

Parmis ces tables, certaines sont cryptées : mon script les décode, et les affiche, pas de problème.

Par contre, j'ai une table, dont les données ne sont pas sensibles, donc elles sont enregistrées en clair dans la table; et lors de l'affichage dans ma page php, les caractères accentués ne sont pas affichés.

A signaler que tout est sauvegardé en utf8_bin.

Chez moi, en local, cela fonctionne parfaitement.

J'ai donc ouvert phpmyadmin en local chez moi et sur ovh, pour comparer.
Or, si les données semblent équivalentes, je trouve une petite différence dans la structure :

Dans la table en local et qui fonctionne, mes données sont déclarées comme type MIME : text/plain.

Or, chez ovh, cette fonction n'est pas présente.

Le problème vient-il de là ?

Pourquoi n'est-ce pas accessible ?

Comment résoudre ce problème ?

Je peux, à la limite, me retaper la saisie de cette table, vu qu'il n'y a pour l'instant pas beaucoup d'enregistrements, mais bon... pas que ça a faire, et pas très propre comme solution; sans compter que je ne suis pas certain que cela résolve le problème.

Des idées ?

Merci

EDIT : A noter que chez moi, mysql est en version 5.1.41-3 sous ubuntu.