begin process at 2012 05 31 06:24:20
  Trouver un code source :
 
dans
 
Accueil > Forum > 

PHP

 > 

Divers

 > 

Débutant(e)

 > 

prob d'envoi de fomulaire


Derniers messages déposésPoser une question dans le forum ou lancer une discussion

prob d'envoi de fomulaire

mercredi 7 juin 2006 à 15:39:15 | prob d'envoi de fomulaire

simsgodzilla

Bonjour!
Pourriez vous me dire ce qui cloche dans ce code? il parrait archer à l'execption près que l'envoi ne s'effectue pas...lol

<? // Exemple d'envoi de formulaire

// Interface PHP pour mail()
function sendMail($mFrom,$mTo,$sujet,$body) {
 // l'émetteur
 $tete = "From: ".$mFrom."\n";
 $tete .= "Reply-To: ".$mFrom."\n";
 // et zou... false si erreur d'émission
 return mail($mTo,$sujet,$body,$tete);
}

?><HTML><HEAD>
 <TITLE>Exemple</TITLE>
</HEAD><BODY><center>

<? // SI LE FORM A ETE POSTE
if(!empty($_POST["Email"])) {

 // Récupère les éléments du form
 $temp="";
 while (list($truc, $val) = each($HTTP_POST_VARS))
  $temp .= $truc." : ".$val."\n\n";
 // Caractères spéciaux
 $temp = stripslashes($temp);

 // Envoie le message
 // L'émetteur est aussi le récepteur dans cet exemple !
 if(@sendmail($_POST["Email"],$_POST["Email"],"Test SendForm",$temp)) {
  // Affiche un message de confirmation
  echo "Le formulaire a bien été envoyé à <b>".$_POST["Email"]."</b> !";
 } else {
  // ou un message d'erreur
  echo "<font color=red>Impossible d'envoyer le formulaire !</font>";
 }

// SINON AFFICHAGE DU FORM
} else { ?>
 <script language="JavaScript">
  // Teste si le mail a une forme correcte
  function checkmail(email) {
   var reg = /^[a-z0-9._-]+@[a-z0-9.-]{2,}[.][a-z]{2,4}$/
   return (reg.exec(email)!=null)
  }
  // Teste le contenu des champs du form avant submit
  function test(nom,mail) {
   if(nom.value=="") {
    alert("Indiquez votre nom !"); nom.focus(); return false;
   } else if(!checkmail(mail.value)) {
    alert("Email incorrect !"); mail.focus(); return false;
   }
   return true;
  }
 </script>
 <table><form method="post" onsubmit="return test(this.Nom,this.Email)">
  <tr>
   <td>Nom<br><input name="Nom"></td>
   <td>Email<br><input name="Email"></td>
  </tr><tr>
   <td colspan=2 align=center>Message<br>
    <textarea wrap=virtual rows=5 cols=35 name="Message"></textarea></td>
  </tr><tr>
   <td align=center>Sexe
    <input type="radio" name="Sexe" value="Homme" checked>M
    <input type="radio" name="Sexe" value="Femme">F</td>
   <td align=center>Pays
    <select name="Pays">
     <option>France</option>
     <option>Belgique</option>
     <option>Suisse</option>
     <option>Autre</option>
    </select></td>
  </tr><tr>
   <td colspan=2 align=center>
    <input type="checkbox" name="Newsletter">
     Recevoir la newsletter</td>
  </tr><tr>
   <td colspan=2 align=center><br>
    <input type="hidden" name="IP" value="<?echo $REMOTE_ADDR?>">
    <input type="submit" value="Envoyer le formulaire"></td>
  </tr>
 </form></table>
<? } ?>
<? print (Date("l F d, Y")); ?>
</BODY></HTML>

mercredi 7 juin 2006 à 15:51:33 | Re : prob d'envoi de fomulaire

David_monchy

Bah je n'ai pas lu tout le code, mais tu n'as pas d'action dans ta balise form, donc c'est peut etre dû à cela...
mercredi 7 juin 2006 à 15:58:54 | Re : prob d'envoi de fomulaire

simsgodzilla

pas bête...mais est ce que ça peut pas être "sendmail" l'action en question? : function sendMail($mFrom,$mTo,$sujet,$body) {
Sinon, il fo mettre quoi?

Merci beuacoup!

mercredi 7 juin 2006 à 16:07:33 | Re : prob d'envoi de fomulaire

JoJo738

Membre Club
Salut,
Voici le code plus aux normes :

<?php // Exemple d'envoi de formulaire

// Interface PHP pour mail()
function sendMail($mFrom,$mTo,$sujet,$body) {
 // l'émetteur
 $tete  = 'From: ' . $mFrom . "\n";
 $tete .= 'Reply-To: ' . $mFrom . "\n";
 // et zou... false si erreur d'émission
 return mail($mTo,$sujet,$body,$tete);
}

?><HTML><HEAD>
 <TITLE>Exemple</TITLE>
</HEAD><BODY><center>

<?php // SI LE FORM A ETE POSTE
if(!empty($_POST['Email'])) {

 // Récupère les éléments du form
 $temp='';
 while (list($truc, $val) = each($_POST))
  $temp .= $truc . ' : ' . $val . "\n\n";
 // Caractères spéciaux
 $temp = stripslashes($temp);

 // Envoie le message
 // L'émetteur est aussi le récepteur dans cet exemple !
 if(@sendmail($_POST['Email'],$_POST['Email'], 'Test SendForm',$temp)) {
  // Affiche un message de confirmation
  echo 'Le formulaire a bien été envoyé à <strong>', htmlentities($_POST['Email']), '</strong> !';
 } else {
  // ou un message d'erreur
  echo '<span style="color: red">Impossible d\'envoyer le formulaire !</span>';
 }

// SINON AFFICHAGE DU FORM
} else { ?>
 <script language="text/JavaScript">
  // Teste si le mail a une forme correcte
  function checkmail(email) {
   var reg = /^[a-z0-9._-]+@[a-z0-9.-]{2,}[.][a-z]{2,4}$/
   return (reg.exec(email)!=null)
  }
  // Teste le contenu des champs du form avant submit
  function test(nom,mail) {
   if(nom.value=='') {
    alert('Indiquez votre nom !'); nom.focus(); return false;
   } else if(!checkmail(mail.value)) {
    alert('Email incorrect !'); mail.focus(); return false;
   }
   return true;
  }
 </script>
 <table><form action="<?php echo $_SERVER['PHP_SELF']; ?>" method="post" onsubmit="return test(this.Nom,this.Email)">
  <tr>
   <td>Nom<br><input type="text" name="Nom" /></td>
   <td>Email<br><input type="text" name="Email" /></td>
  </tr><tr>
   <td colspan=2 align=center>Message<br>
    <textarea wrap="virtual" rows=5 cols=35 name="Message"></textarea></td>
  </tr><tr>
   <td align=center>Sexe
    <input type="radio" name="Sexe" value="Homme" checked
/>M
    <input type="radio" name="Sexe" value="Femme"
/>F</td>
   <td align=center>Pays
    <select name="Pays">
     <option>France</option>
     <option>Belgique</option>
     <option>Suisse</option>
     <option>Autre</option>
    </select></td>
  </tr><tr>
   <td colspan=2 align=center>
    <input type="checkbox" name="Newsletter"
/>
     Recevoir la newsletter</td>
  </tr><tr>
   <td colspan=2 align=center><br
/>
    <input type="hidden" name="IP" value="<?php echo $_SERVER['REMOTE_ADDR']; ?>" />
    <input type="submit" value="Envoyer le formulaire"
/></td>
  </tr>
 </form></table>
<?php }

echo Date('l F d, Y');

?>
</BODY></HTML>

Sinon, verifi coté javascript ...

Si ma reponse te convient, merci de l'accepter !
mercredi 7 juin 2006 à 16:15:55 | Re : prob d'envoi de fomulaire

simsgodzilla

J'aurais tellement voulu accepter ta réponse (qui avait l'air top!)
mais il me marque toujours : impossible d'envoyer le formulaire!
tu crois que ça vient forcément du code?

mercredi 7 juin 2006 à 16:16:02 | Re : prob d'envoi de fomulaire

David_monchy

Je suis d'accord avec JoJo738, mais dans ce cas, il faut faire gaffe, car parfois $_SERVER['PHP_SELF'] ne renvoie pas la page désirée selon si cette page est inclue ou non. Si son code ne marche pas, remplace le par le nom de ta page contenant le formulaire.
mercredi 7 juin 2006 à 16:25:47 | Re : prob d'envoi de fomulaire

JoJo738

Membre Club
Enleve le @ à l'appel de ta fontion pour voir l'erreur reportée :p


Si ma reponse te convient, merci de l'accepter !
mercredi 7 juin 2006 à 16:31:21 | Re : prob d'envoi de fomulaire

simsgodzilla

Hum....
voici la rep :
Warning: mail(): Failed to connect to mailserver at "localhost" port 25, verify your "SMTP" and "smtp_port" setting in php.ini or use ini_set() in c:\documents and settings\administrator\mes documents\sophie\master2\www\index.php on line 9
Impossible d'envoyer le formulaire !Wednesday June 07, 2006

Kézako?

mercredi 7 juin 2006 à 16:39:16 | Re : prob d'envoi de fomulaire

JoJo738

Membre Club
Réponse acceptée !
Ahhhh, faut configurer ton serveur localhost pour les emails :D


Si ma reponse te convient, merci de l'accepter !
mercredi 7 juin 2006 à 16:43:01 | Re : prob d'envoi de fomulaire

simsgodzilla



 comment fo faire....en détail...(désolée de t'enquiquiner...mais jsuis débutante...snif)

1 2 3 4

Cette discussion est classée dans : mail, email, temp, post, return


Répondre à ce message

Sujets en rapport avec ce message

Problème de compatibilité de script [ par Chris54 ] Bonjour,J'ai un problème d'execution d'un script javascript sous netscape alors qu'il fonctionne parfaitement sous IE mais je ne sais pas pourquoi.Que envoie d'Email :Je dois avoir de la merde dans les yeux [ par Wam0106 ] Voila chez Online.net il me dise qu'il y a une erreure a la ligne 3 mais je ne vois pas ou est le pb si qq'un peu me dire ce qui ne va pas: $headers = formmail [ par chris tuckers ] Bonjour bonjour...J'ai fait une requete etj'arrive à envoyer un mail normal.Cependant, j'en ai fait une seconde et lle elle ne marche pas la mechante probleme d'envoi de mail [ par chris tuckers ] Bonjour bonjour...J'ai fait une requete etj'arrive à envoyer un mail normal.Cependant, j'en ai fait une seconde et lle elle ne marche pas la mechante Pb, Formulaire / Mail [ par MaSenCo ] Bonjour,Je viens de mettre un formulaire / mail sur mon site, et j'ai un petit problème avec la fonction mail, c'est à dire que je reçois bien le mail Newsletter php [ par Travailleuuse06 ] Bonjour,je suis en train de créer une newsletter en php et j'aurais voulu vérifier si un utilisateur est déjà dans ma base de données avant de le supp Probleme de verification de champ de formulaire [ par simsgodzilla ] Bonjour!Mon formulaire marche impect sauf qu'il corrige pas les erreurs comme je lui demande...Quelqu'un aurait il une réponse? Merci! // Interface formulaire trop complexe pour moi ! sos [ par bg62 ] bonjour, je me suis lancé dans l'élaboration d'un formulaire (en php mais avec aussi du javascript) et je rame complètement, malgré toutes les astuces débutant ayant besoin d'un coup de pouce [ par zebigred ] bonjour à tousje suis un tres grand débutant dans le php et j'ai un probleme avec l'envoi de formulaire et la fonction mail. en effet je ne sais pas o Mail avec plusieurs destinataires [ par Anthotill ] Bonjour à tousJ'ai un petit soucis avec mon formulaire multi destinataire dans mon espace membre.En effet, malgré le fait que je choisisse deux (ou pl


Nos sponsors


Sondage...

CalendriCode

Mai 2012
LMMJVSD
 123456
78910111213
14151617181920
21222324252627
28293031   

Consulter la suite du CalendriCode

Photothèque

A découvrir



 
Développement réalisé par Nicolas SOREL (Nix) avec l'aide de : Cyril DURAND et Emmanuel (EBArtSoft), Merci à Vincent pour ses précieux conseils.
CodeS-SourceS.com© Toute reproduction même partielle est interdite sauf accord écrit du Webmaster
CodeS-SourceS.com© est une marque déposée tous droits réservés

Google Coop CodeS-SourceS Google Coop CodeS-SourceS
Temps d'éxécution de la page : 0,936 sec (3)

Nous contacter | Annoncer sur CodeS-SourceS | Mentions légales