Cela fait vraiment plusieurs jours que je cherche sans trouver, alors si quelqu’un pouvait m’aider :
j’ai installé drupal chez ovh sans problème. A la suite d’un souci il y a quelque temps, j’ai du réimporter ma base (en prenant soin de faire attention à l’encodage utf8_unicode_ci). Tout s’est bien passé, sauf que dans mon interface d’admin j’avais ce caractère � (losange noir avec un point d’interrogation) à la place de mes espaces avant les :
Comme cela ne se voyait pas sur mon site en ligne, et que j’étais pressé je ne m’en étais pas préoccupé. Seulement maintenant pour mon site, je dois absolument créer un formulaire de contact, et j’ai toujours ce même souci.
ex : Votre nom� : *
J’ai téléphoné à OVH, ils ont vérifier et cela ne vient pas de ma base de données.
A noter aussi que dans mes templates de pages, j’ai bien :
Merci de votre aide.
- Vous devez vous identifier ou créer un compte pour écrire des commentaires

C’est clairement un problème d’encodage, dans ce genre de cas j’y vais personnellement à taton :
- Check le fichier avec un éditeur pour voir son encodage
- J’insère des données dans ma base (table) pour savoir si ça fonctionne correctement
Dans le cas d’un CMS comme Drupal (ne pouvant toucher le core), tu devras te limiter à tester ta base de données (peut être en changeant le type des tables ou si les nouvelles données que tu rentres sont correctes c’est qu’il faut réinsérer les anciennes) et à ton template en cherchant à vérifier la correspondance d’encodage de tes fichiers template.
Je déconseille aussi de faire ces «test» sur la version en production :)
CheckForm (Classe Js OpenSource) - Mon Twitter
mickaelb
58
Merci pour ta réponse, j’ai je crois tout essayé, j’avais aussi vérifier mes fichiers templates qui sont bien tous en UTF8
leosp4
3
Fait un test en ajoutant dans ton template ut8_encode() sur les régions qui s’affichent, exemple :
<div id="sidebar-left" class="sidebar"><?php print utf8_encode($left) ?>
</div>
Tu verras ce que ça donne, si c’est pas mieux essaie avec utf8_decode().
Si tu trouves pas d’autre solution, ça pourra tjs faire un «rafistolage» d’urgence… Il y a d’autres fonctions pour régler l’encodage en PHP, mais dans ton cas, ça risque plus d’être celles-ci…
CheckForm (Classe Js OpenSource) - Mon Twitter
mickaelb
58
Le problème c’est que je ne trouve pas où se trouve le template du formulaire de contacts…
leosp4
3
Tout dépend le «engine» que ton thème utilise : http://drupal.org/node/11819
Si comme celui par défaut (garland) il utilise PHPTemplate, la plupart des affichages sont gérés dans page.tpl.php
Il n’y a «normalement» pas de fichier «.tpl.php» uniquement pour ton formulaire, si c’est un bloc que tu as inséré toi même il devrait suivre l’affichage «standard pour un bloc» qui est défini soit dans block.tpl.php soit dans page.tpl.php (si je ne dis pas de bêtises).
CheckForm (Classe Js OpenSource) - Mon Twitter
mickaelb
58