Problème caractère spéciaux formulaire

cs_cendrillon84 Messages postés 21 Date d'inscription mardi 30 octobre 2007 Statut Membre Dernière intervention 11 janvier 2011 - 12 févr. 2009 à 11:48
cs_cendrillon84 Messages postés 21 Date d'inscription mardi 30 octobre 2007 Statut Membre Dernière intervention 11 janvier 2011 - 12 févr. 2009 à 21:36
Bonjour à tous,

J'ai un formulaire dans une page html qui passe par une page php (formmail), lors de la récéption des mails sur mon adresse tous les caractère spéciaux tels que les "é" "à"...n'apparaissent pas comme tels..
Pouvez vous m'aider svvvpppp..
Merci

Voici le formulaire dans ma page html :

<form method="post" action="formmail.php" name="envoi_mail" id="envoi_mail" onsubmit="return validate(this);">
 
                       

                          

                          

                            
Votre société :

                              <label style="width:180px"></label>

                             

                               
Votre nom * :

                                <label style="width:180px"></label>

        

                               
Télephone * :

                                <label style="width:180px"></label>

                             

                               
Votre mail * :

                                <label style="width:180px"></label>

                          

                          

                            

                               
Votre message* :

                                <textarea cols="" rows="" id="message" name="message" style="width:250px; height:100px;"></textarea>

                           

             
             
               

                          

                       

      
* Champs obligatoires

                       

                       

                     </form>

Me script qui vérifi les champs :

<script>


function validate(frm){


 if(!frm.nom.value){
 
  alert('Vous devez indiquer votre nom!');
  frm.nom.focus();
  return false;
 }
 if(!frm.telephone.value){
 
  alert('Vous devez indiquer votre téléphone!');
  frm.telephone.focus();
  return false;
 }
 if(!document.getElementById('mail').value){
 
  alert('Vous devez indiquer votre adresse mail!');
  document.getElementById('mail').focus();
  return false;
 }
 if(!document.getElementById('message').value){
 
  alert('Vous devez indiquer votre message!');
  document.getElementById('message').focus();
  return false;
 }
 return true;


}


</script>

Voici le code le la page formmail :

<?php


$TO = "[mailto:monadresse@blabla.fr monadresse@blabla.fr]";


$h  = "From: " . $TO;


$message = "";


while (list($key, $val) = each($HTTP_POST_VARS)) {
  $message .= "$key : $val\n\n";
}
mail($TO, $subject, $message, $h);


Header("Location:http://www.bmccom.com/a_form_contact.html");


?>

Pouvez vous m'aider svp??

2 réponses

TychoBrahe Messages postés 1309 Date d'inscription samedi 31 janvier 2009 Statut Membre Dernière intervention 5 juin 2013 12
12 févr. 2009 à 15:01
Salut,

Précise donc le bon encodage dans ton header (ainsi que d'autres petites infos toujours utiles de préférence) :
$h = "MIME-Version: 1.0\r\nContent-type: text/plain; charset=utf8\r\nFrom: $TO";

Autre petite remarque :
$HTTP_POST_VARS est obsolète ; de nos jours on utilise $_POST.
http://fr3.php.net/manual/fr/reserved.variables.post.php
0
cs_cendrillon84 Messages postés 21 Date d'inscription mardi 30 octobre 2007 Statut Membre Dernière intervention 11 janvier 2011
12 févr. 2009 à 21:36
merci!
0