I use this script, to send mail from a website. I want it to send mail using UTF-8.
Why? Because users use french, and now accents are not working (éà etc)
Can anyone help? Thanks a lot!
- Code: Select all
<?php
// Couleur du texte des champs si erreur saisie utilisateur
$color_font_warn="#FF0000";
// Couleur de fond des champs si erreur saisie utilisateur
$color_form_warn="#FFCC66";
// Ne rien modifier ci-dessous si vous n’êtes pas certain de ce que vous faites !
if(isset($_POST['submit'])){
$erreur="";
// Nettoyage des entrées
while(list($var,$val)=each($_POST)){
if(!is_array($val)){
$$var=strip_tags($val);
}else{
while(list($arvar,$arval)=each($val)){
$$var[$arvar]=strip_tags($arval);
}
}
}
// Formatage des entrées
$f_1=trim(ucwords(eregi_replace("[^a-zA-Z0-9éèàäö\ -]", "", $f_1)));
$f_2=strip_tags(trim($f_2));
$f_3=trim(eregi_replace("[^0-9\ +]", "", $f_3));
// Verification des champs
if(strlen($f_1)<2){
$erreur.="<li><span class='txterror'>Le champ « Votre nom: » est vide ou incomplet.</span>";
$errf_1=1;
}
if(strlen($f_2)<2){
$erreur.="<li><span class='txterror'>Le champ « Courriel: » est vide ou incomplet.</span>";
$errf_2=1;
}else{
if(!ereg('^[-!#$%&\'*+\./0-9=?A-Z^_`a-z{|}~]+'.
'@'.
'[-!#$%&\'*+\/0-9=?A-Z^_`a-z{|}~]+\.'.
'[-!#$%&\'*+\./0-9=?A-Z^_`a-z{|}~]+$',
$f_2)){
$erreur.="<li><span class='txterror'>La syntaxe de votre adresse e-mail n'est pas correcte.</span>";
$errf_2=1;
}
}
if(strlen($f_4)<2){
$erreur.="<li><span class='txterror'>Le champ « Message: » est vide ou incomplet.</span>";
$errf_4=1;
}
if($erreur==""){
// Création du message
$titre="Message de votre site";
$tete="From:Mechoui Party\n";
$corps.="Votre nom: : ".$f_1."\n";
$corps.="Courriel: : ".$f_2."\n";
$corps.="Numéro de téléphone: : ".$f_3."\n";
$corps.= "Message: ".$f_4."\n";
if(mail("info@groupegdi.com", $titre, stripslashes($corps), $tete)){
$ok_mail="true";
}else{
$erreur.="<li><span class='txterror'>Une erreur est survenue lors de l'envoi du message, veuillez refaire une tentative.</span>";
}
}
}
?>

