Page 1 sur 1

Problème d'accent dans le cors du message d'un formulaire

Posté : 24 août 2012, 23:06
par Fee
Mon formulaire que vous voyez fait des ? au lieux des é seulement dans le message et non dans le titre ou c'est correct.

Merci de m'aider à trouvé la solution. J'ai essayé des commandes PHP qui n'a rien rien donnée...
<?php
session_start(); 
if(!isset($_SESSION['code']) OR strlen($_SESSION['code']) !=5) exit("Erreur! Error!");
if($_SESSION['code'] != $_POST['verif']) exit("Erreur les valeurs sont différentes! / Error values ??are different!");
$exp = $_POST['mail'];
$objet = stripslashes(utf8_decode($_POST['objet']));
$msg = stripslashes(utf8_decode($_POST['msg']));
$envoi=mail("[email protected]", $objet, $msg,"From: $exp\r\n"."Reply-To: $exp\r\n");if($envoi);
session_unset();
session_destroy();
header('Location: http://www.com');
exit;
?>

le son des cors

Posté : 25 août 2012, 11:44
par sirakawa
me transperce le corps du message

Ce sont des histoires de utf-8 à déclarer dans ce genre àmettre avant <?PHP pour avoir le paix
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd">
<html xmlns="http://www.w3.org/1999/xhtml"> 
<head>
	<meta http-equiv="content-type" content="text/html;charset=utf-8" />
</head>

Re: Problème d'accent dans le cors du message d'un formulair

Posté : 27 août 2012, 19:44
par Fee
Dans ma page HTML c'est déja fait. Je rajouter quand même:
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd">
 <html xmlns="http://www.w3.org/1999/xhtml"> 
<head>
         <meta http-equiv="content-type" content="text/html;charset=utf-8" />
 </head>
Dans le fichier script php ?

Re: Problème d'accent dans le cors du message d'un formulair

Posté : 27 août 2012, 19:51
par xTG
Sans envoyer l'email si tu affiches ce que tu reçois du formulaire qu'est ce qui s'affiche correctement ou non ?

en

Posté : 27 août 2012, 20:38
par schim59
cor,
Pourquoi tu mets utf8_decode() ?
D'avance merci.

Re: Problème d'accent dans le cors du message d'un formulair

Posté : 28 août 2012, 04:42
par Fee
XTG: Je ne reçois rien c'est un courriel donc il met simplement le texte. On m'a parler de peut-être que le problème viendrait du Textarea du formulaire.

Pour schim59, je le mets car cela corrige les problèmes d'accents pour les Objets (Titre) mais cela ne corrige pas le problème dans le Textarea mais au moins au lieu de A@ pour un É j'ai un ? à place pour le moment c'est plus lisible.

J'ai essayé cela mais à moins que j'ai fais un erreur entre Textarea <?php echo htmlentities($msg); ?> mais aye c'est 2 fois pire. Cela me donne pour un É tilde:copy; quelque chose comme cela.

Re: Problème d'accent dans le cors du message d'un formulair

Posté : 28 août 2012, 06:41
par xTG
En fait tu reçoit de l'utf8 sur une page en iso.
Donc là tu ferrais mieux de décoder ou bien de passer aussi cette page en utf8.
Jettes un oeil dans le forum faq/tutos il y a un sujet sur l'encodage.

Re: Problème d'accent dans le cors du message d'un formulair

Posté : 28 août 2012, 09:15
par Fee
Moins je viens de voir que mon fichier PHP est en AINSI. Ce que je ne comprend pas, quand le met en UTF-8 cela me donne un message d'erreur de Header.

Cela reste pour les titres cela fonctionne mais le Textarea le decode ne fonctionne pas.

Re: Problème d'accent dans le cors du message d'un formulair

Posté : 28 août 2012, 09:25
par moogli
Ce que je ne comprend pas, quand le met en UTF-8 cela me donne un message d'erreur de Header.
ça c'est du à UTF-8 avec BOM, ce que php ne comprend pas.

il faut choisir utf-8 (tout court) ou UTF-8 sans BOM :)


@+

Re: Problème d'accent dans le cors du message d'un formulair

Posté : 28 août 2012, 09:29
par Fee
Moins j'en ai a apprendre. Cela fonctionne bien en local mais en ligne c'est autre chose oufff!

Re: Problème d'accent dans le cors du message d'un formulair

Posté : 28 août 2012, 10:02
par schim59
Ahhhhhhh ca vient donc de l'editeur de text.
Moi j'utilise phpedit

Re: Problème d'accent dans le cors du message d'un formulair

Posté : 28 août 2012, 10:06
par moogli
Ahhhhhhh ca vient donc de l'editeur de texte.
oui ça peux, indiquer un header et un doctype ne suffise pas !
Moi j'utilise phpedit
sur le principe osef, le problème est le même avec notepad++, eclipse netbeans ou zend studio (et les 10000000000 autres que je ne connais pas :) ).

Le BOM n'est pas compris par php (et d'autre), il pense donc qu'il s'agit de chose à envoyer au navigateur => erreur au 1er header, session_start etc autre.

y a un tuto assez complet sur la chose dans la FAQ :)


@+