Page 1 sur 1

encodage formulaire php

Posté : 05 déc. 2012, 11:47
par bb64
Bonjour

Je galère depuis quelque temps avec l'encodage de ce formulaire, j'ai toujours des caractères bizarres à la place des accents.
j'ai recherché sur de nombreux sites, j'ai testé de nombreuses solutions , en vain .....!
Ma page web est enregistrée en php sous UTF-8 (sams bom)

Merci de votre aide

BB
------------------------------------------------------------------------------------------------------
<!DOCTYPE html>
<head>
<title>Document sans titre</title>
<meta http-equiv="Content-Type" content="text/html; charset=utf-8">
</head>

/formulaire/<?
if (isset($_POST['f_envoyer'])) {
$email = trim($_POST['f_email']);
$message = ($_POST['f_message']);
$erreur_email = 0;
$erreur_message = 0;
$retour = "";
$destinataire = "[email protected]";
$sujet = "Locations cambo";
$merci = "Votre message à bien été envoyé, merci.";
if ($email == "") {
$retour .= "Entrez votre adresse email.";
$erreur_email = 1;
} else {
if (! preg_match('/^[0-9a-z]([-_.]?[0-9a-z])*@[0-9a-z]([-.]?[0-9a-z])*\.[a-z]{2,3}$/i',$email)) {
$retour .= "L'adresse email n'est pas correcte.";
$erreur_email = 1;
}
}
if ($message == "") {
$retour .= "Vous avez oublié votre message.";
$erreur_message = 1;
}
if ($retour =="") {
$contenu .= $email."\n";
$contenu .= $message;
mail($destinataire,$sujet,$contenu,"FROM:[email protected]");
$retour = $merci;
$email = "";
$message = "";
}
} else {
$email = "";
$message = "";
}
if ($_POST["vide"] != "") exit("Tentative d'intrusion détectée");
?>
<form action="<? echo $_SERVER['PHP_SELF'] ?>" method="post" id="formulaire">
<p><span <? if ($erreur_email == 1){echo "class='erreur'";} ?>>Votre email : </span></p>
<div><input name="f_email" type="text" id="f_email" size="40" maxlength="40" value = "<? echo $email ?>" />
</div>
<input type="hidden" name="vide" value="" />
<p><span <? if ($erreur_message == 1){echo "class='erreur'";} ?>><br />
Votre message : </span></p>
<div>
<textarea name="f_message" cols="55" rows="5" id="f_message" ><? echo $message ?></textarea>
</div>
<div><br />
<input type="submit" name="f_envoyer" value="Envoyer" />
</div>
</form>
<p class='retour'> <? echo $retour; ?> </p> </div>


/fin formulaire/

</body>
</html>

Re: encodage formulaire php

Posté : 05 déc. 2012, 11:54
par xTG
Je suppose que c'est l'email qui pose problème ?
Il faut spécifier l'encodage dans le header.
Tu trouveras la solution dans les exemples de la documentation. :)

Re: encodage formulaire php

Posté : 07 déc. 2012, 16:42
par piotrowski-s
RTFM

Re: encodage formulaire php

Posté : 07 déc. 2012, 19:57
par xTG
RTFM
J'aimerai qu'on ne retrouve pas la mauvaise ambiance des forums UNIX merci...
Je la supporte déjà bien assez toute la journée au boulot quand je cherche de l'aide pour du linux temps réel...
Restons bon enfant sur ce forum, il n'y a que cela de vrai. :D