Formulaire php ne fontione pas avec yahoo

raftiar Messages postés 4 Date d'inscription   Statut Membre Dernière intervention   -  
Nico_ Messages postés 1219 Date d'inscription   Statut Membre Dernière intervention   -
Bonjour,
j'ai réalisé un formulaire en php mais je ne reçois riens sur ma boite yahoo svp de l'aide

<?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)));
// Verification des champs
if(strlen($f_1)<2){
$erreur.="<li><span class='txterror'>Le champ « Nom » est vide ou incomplet.</span>";
$errf_1=1;
}
if($erreur==""){
// Création du message
$titre="Message de votre site";
$tete="From:Site@Raftiar.ifrance.com/a\n";
$corps.="Nom : ".$f_1."\n";
if(@mail("dr_zak@yahoo.fr", $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>";
}
}
}



?>
<html>
<head>
<style type="text/css" media="screen"><!--
INPUT { color: #000; font-size: 11px; font-family: verdana, Arial, Helvetica, Geneva, Swiss, SunSans-Regular; background-color: #EEEEEE }
SELECT { color: #000; font-size: 11px; font-family: verdana, Arial, Helvetica, Geneva, Swiss, SunSans-Regular; background-color: #EEEEEE }
TEXTAREA { color: #000; font-size: 11px; font-family: verdana, Arial, Helvetica, Geneva, Swiss, SunSans-Regular; background-color: #EEEEEE }
.txterror { color: black; font-size: 11px; font-family: Verdana, Arial, Helvetica, Geneva, Swiss, SunSans-Regular }
.txtform { color: black; font-size: 12px; font-family: Verdana, Arial, Helvetica, Geneva, Swiss, SunSans-Regular }
--></style>
</head>

<body>
<? if($ok_mail=="true"){ ?>
<table width='100%' border='0' cellspacing='1' cellpadding='1'>
<tr><td><span class='txtform'>Le message ci-dessous nous a bien été transmis, et nous vous en remercions.</span></td></tr>
<tr><td> </td></tr>
<tr><td><tt><?echo nl2br(stripslashes($corps));?></tt></td></tr>
<tr><td> </td></tr>
<tr><td><span class='txtform'>Nous allons y donner suite dans les meilleurs délais.<br>A bientôt.</span></td></tr>
</table>
<? }else{ ?>
<form action='<? echo $PHP_SELF ?>' method='post' name='Form'>
<table width='100%' border='0' cellspacing='1' cellpadding='1'>
<? if($erreur){ ?><tr><td colspan='2' bgcolor='red'><span class='txterror'><font color='white'><b> ERREUR, votre message n'a pas été transmis</b></font></span></td></tr><tr><td colspan='2'><ul><?echo$erreur?></ul></td></tr><?}?>
<tr><td colspan='2'><span class='txterror'>Les champs marqué d'un * sont obligatoires</span></td></tr>
<tr><td align='right' width='30%'><span class='txtform'>Nom* :</span></td><td><input type='text' style='width:200 <?if($errf_1==1){print("; background-color: ".$color_form_warn."; color: ".$color_font_warn);}?>;' name='f_1' value='<?echo stripslashes($f_1);?>' size='24' border='0'></td></tr>
<tr><td align='right' width='30%'></td><td><input type='submit' name='submit' value='Envoyer' border='0'></td></tr>
</table>
</form>
<? } ?>
</body>
A voir également:

2 réponses

Nico_ Messages postés 1219 Date d'inscription   Statut Membre Dernière intervention   189
 
salut,

voici un générateur

Il se peux, suivant ton hébergeur que certainne boite mail n'accèpte pas les mails envoyer par ton hébergeur!

bonne soirée
1
Utilisateur anonyme
 
bonjour,

si cela ne fonctionne pas sur yahoo, il est certain que cela ne fonctionne pas non plus avec les autres.

j'ai regardé vite fait ton code (pas facile a lire, le code est vraiment fouilli)
sur cette ligne: if(@mail("dr_zak@yahoo.fr", $titre, stripslashes($corps), $tete)), si tu enleve 'strislashes' (que tu les met avant la fonction mail) est ce que ton code marche?

sinon sur cette ligne: " $corps.="Nom : ".$f_1."\n"; " , peut etre que j'ai mal regardé mais j'ai pas vu de reference a $corps avant, si c'est bien le cas il faut que tu enleve le point qui est juste après la variable $corps
0