Forum > PHP > Caractères incohérents venant d'un formulaire PHP

Caractères incohérents venant d'un formulaire PHP

Auteurs Messages
Page : 1
icone offline Vitoutso # Posté le 08/09/2010 à 12h19
avatar de Vitoutso
Rang: membre
Bonjour,

Je savais bien que je n'allais pas tarder à avoir de nouveau de l'aide pour le PHP !

Voici mon problème :
Lorsque je compose un message dans mon formulaire en PHP je le reçois avec des caractères incohérents. J'ai essayé d'utiliser les caractères spéciaux pour les accents et autres, cependant rien n'y fait, j'ai seulement d'autres formes incohérentes.

Voici un exemple de ce que j'obtiens dans les mails venant de ce formulaire :

Vous êtes : Un visiteur
Objet de votre message : Essai 8
Votre message : essai 8. Caractères incohérents dans le message.


Comment puis-je remédier à ce problème ? Sachant que la balise méta indique :
<meta http-equiv="content-type" content="text/html; charset=utf-8" />

Pour infos je travaille avec Adobe Dreamweaver CS4. Et que dans les préférences de Dream il y a ceci :
  • Type de document par défaut (DTD) : XHTML 1.0 Transitional

  • Codage par défaut : Unicode UTF-8 et que concernant ce codage la case "Utiliser à l'ouverture de fichiers ne spécifiant pas de codage" est cochée.

  • Formulaire de normalisation Unicode : C (Décomposition canonique suivie d'une composition canonique)

  • Et que la case "Inclure une signature Unicode (Bom)" n'est pas coché


Merci pour votre aide...!

Cordialement,

Vitoutso
Aider son prochain c'est donner sans rien attendre en retour !
icone online funnycat # Posté le 08/09/2010 à 12h27
avatar de funnycat
Rang: administrateur
Bonjour.
Les problèmes d'encodage, c'est un vrai casse-tête.
Je n'ai jamais utilisé Adobe Dreamweaver CS4, mais comme tout éditeur il doit y avoir des paramètres pour le format des données. Si c'est possible, essaie de transformer ton document en UTF-8 (sans bom). Le "sans bom" est important, dernièrement ça m'a réparé un problème d'encodage.
€Si en faisant quelques essaie tu n'y arrive toujours pas, alors tu pourra essayer de passer en ISO-8859-1. Pour cela il faudra utiliser cette balise XHTML:
<meta http-equiv="content-type" content="text/html; charset=ISO-8859-1" />
Et il faudra également encode le fichier en ISO-8859-1.

J'espère que ça va t'aider.
Bon courage.
Ma page préférée? Le dossier référencement qui présente une multitude d'informations utiles. smiley
Sinon hors internet je suis développeur web PHP.
icone offline Vitoutso # Posté le 08/09/2010 à 14h07
avatar de Vitoutso
Rang: membre
Superbe Funnycat!
J'y suis arrivé avec l'encodage ISO-8859-1.

J'ai maintenant des caractères cohérents dans mes mails.
Merci bien !

Cordialement,

Vitoutso
Aider son prochain c'est donner sans rien attendre en retour !
icone offline stc # Posté le 08/09/2010 à 19h38
avatar de stc
Rang: membre
Astuces pour ne pas être embêté avec les caractère spéciaux : mettre ce code tout en haut de la page :
Code:
<?php
header('Content-Type: text/html; charset=utf-8');
?>
ou
<?php
header('Content-Type: text/html; charset=iso-8859-1');
?>

Selon l'encodage utilisé (mais je conseille quand même l'utf-8)
icone online funnycat # Posté le 08/09/2010 à 20h23
avatar de funnycat
Rang: administrateur
@Vitoutso: bonne nouvelle.
@stc: ah oui c'est intelligent, merci pour cette astuce.
Ma page préférée? Le dossier référencement qui présente une multitude d'informations utiles. smiley
Sinon hors internet je suis développeur web PHP.
Page : 1