Envoi formulaire complexe sur email via PHP
smov6
Messages postés
8
Date d'inscription
Statut
Membre
Dernière intervention
-
smov6 -
smov6 -
Salut a tous,
Cela fait maintenant 1 semaine que je cherche une solution à mon probleme.
J'ai créer un formulaire comprenant des champs texte, des boutons radio, des cases a cocher .... bref unn peut de tout ;)
Je désire envoyer les données complétées par l'utilisateur sur ma boite email, je pense que le meilleur moyen est de passer par un fichier PHP, cependant je ne trouve aucuns tutorial clair qui comporte de multiples champs a inclure dans le "body" du mail.
De plus il faut absolument que je termine ce truc le plus rapidement possible :(
Si un pro pouvait me filer un coup de pouce je lui en serait éternellemnt reconnaissant ;)
Cela fait maintenant 1 semaine que je cherche une solution à mon probleme.
J'ai créer un formulaire comprenant des champs texte, des boutons radio, des cases a cocher .... bref unn peut de tout ;)
Je désire envoyer les données complétées par l'utilisateur sur ma boite email, je pense que le meilleur moyen est de passer par un fichier PHP, cependant je ne trouve aucuns tutorial clair qui comporte de multiples champs a inclure dans le "body" du mail.
De plus il faut absolument que je termine ce truc le plus rapidement possible :(
Si un pro pouvait me filer un coup de pouce je lui en serait éternellemnt reconnaissant ;)
A voir également:
- Envoi formulaire complexe sur email via PHP
- Whatsapp formulaire opposition - Guide
- Formulaire de réclamation facebook - Guide
- Comment creer un compte email - Guide
- Formulaire de reclamation instagram - Guide
- Programmer envoi sms - Guide
44 réponses
le fait qu'il te manque la premiere checkbox vient du fait que tu commence avec $i=1, il faut surement commencer à 0. Par contre le fait de les renommer ne changera surement rien, mais tu peux toujours essayer.
si tu reprends ce code :
$body .="Quel_interet : $Quel_interet\n";
$items = 21;
for ($i = 1; $i <= $items; $i++) {
$body .= "$Quel_interet[$i], ";
}
mais dans ton formulaire tu mets une valeur par défaut (=0 par exemple) pour tes 21 Quel_interet[] et que tu mets à 1 tes valeur cochées. de cette maniere aucune de tes Quel_interet[] ne sera nulle. Peut etre que ca t'évitera Notice: Undefined offset: 6 in D:\home\Default\alsprod.com\htdocs\envoi2.php on line 34
$body .="Quel_interet : $Quel_interet\n";
$items = 21;
for ($i = 1; $i <= $items; $i++) {
$body .= "$Quel_interet[$i], ";
}
mais dans ton formulaire tu mets une valeur par défaut (=0 par exemple) pour tes 21 Quel_interet[] et que tu mets à 1 tes valeur cochées. de cette maniere aucune de tes Quel_interet[] ne sera nulle. Peut etre que ca t'évitera Notice: Undefined offset: 6 in D:\home\Default\alsprod.com\htdocs\envoi2.php on line 34
ok, j'ai pas trop compris ton raisonnement .... oups
mes checkbox sont par défaut "désactivé" (à zero quoi), voila un exemple d'une checkbox dans mon formlaire HTML :
<input name="Quel_interet[]" type="checkbox" id="Quel_interet[]" value="Maintenance_Generale" />
je vois pas trop ou mettre zero au lieu d'une valeur nulle ??
=> MERCI pour ton aide !
mes checkbox sont par défaut "désactivé" (à zero quoi), voila un exemple d'une checkbox dans mon formlaire HTML :
<input name="Quel_interet[]" type="checkbox" id="Quel_interet[]" value="Maintenance_Generale" />
je vois pas trop ou mettre zero au lieu d'une valeur nulle ??
=> MERCI pour ton aide !
Vous n’avez pas trouvé la réponse que vous recherchez ?
Posez votre question
tu peux peut etre dans un javascript sur ton formulaire tester si tes Quel_interet[] sont vides ou s'ils contiennent tes valeurs. S'ils sont vides ou nuls, essaye de leur remettte une valeur =0 de facon a ce que qd ton tableau "arrive en php, il contienne boien 21 valeurs
ouh la ca se complique la
je n'arrive pas a comprendre qu'il n'éxiste pas une syntaxe simple pour envoyer e genre de truc, ca doit etre souvent utilisé tout de meme.
Je vais réfléchir a ta solution, meme si je pense ne pas etre capable de realiser ce genre de truc en javascript...
Merki ;)
je n'arrive pas a comprendre qu'il n'éxiste pas une syntaxe simple pour envoyer e genre de truc, ca doit etre souvent utilisé tout de meme.
Je vais réfléchir a ta solution, meme si je pense ne pas etre capable de realiser ce genre de truc en javascript...
Merki ;)
est-ce tu peux poster le code complet de ton formulaire. comme ca je pourrais tester de mon coté. Après uyne bonne nuit de sommeil, on va trouver une solution. Sinn, s'i est en ligne, files moi l'adresse.
Salut,
Pour le formulaire voici l'adresse :
http://www.alsprod.com/Enquete_version_PHP2.html
tu veux aussi le code PHP complet ?
Pour le formulaire voici l'adresse :
http://www.alsprod.com/Enquete_version_PHP2.html
tu veux aussi le code PHP complet ?
<html>
<head>
</head>
<body>
<?
ini_set('sendmail_from', 'enquete@aol.com');
$Interet=$_POST['Interet'];
$Quel_interet=$_POST['Quel_interet'];
$appel=$_POST['appel'];
$Si_NON_Pourquoi=$_POST['Si_NON_Pourquoi'];
$autres_besoins=$_POST['autres_besoins'];
$Commentaires=$_POST['Commentaires'];
$Nom=$_POST['Nom'];
$Prenom=$_POST['Prenom'];
$societe=$_POST['societe'];
$fonction=$_POST['fonction'];
$MailTo = "jerome.smo@wanadoo.fr";
$MailSubject = "Enquete";
$Envoi = 1;
if ($Interet == ""){
echo("Merci de préciser votre interet<br>");
$Envoi = 0;
}
else {
$body= "Interet : $Interet\n";
}
$body .="Quel_interet :";
$items = 21;
for ($i = 0; $i <= $items; $i++) {
$body .= "\n$Quel_interet[$i]";
}
if ($appel == ""){
echo("Merci de préciser si vous désirez faire appel à nos service<br>");
$Envoi = 0;
}
else {
$body .= "\nappel : $appel\n";
}
$body .= "Si_NON_Pourquoi : $Si_NON_Pourquoi\n";
$body .= "autres_besoins : $autres_besoins\n";
$body .= "Commentaires : $Commentaires\n";
if ($Nom == ""){
echo("Vous n'avez renseigné votre nom.<br>");
$Envoi = 0;
}
else {
$body .= "Nom : $Nom\n";
}
if ($Prenom == ""){
echo("Vous n'avez renseigné votre prénom.<br>");
$Envoi = 0;
}
else {
$body .= "Prenom : $Prenom\n";
}
if ($societe == ""){
echo("Vous n'avez renseigné le nom de votre société.<br>");
$Envoi = 0;
}
else {
$body .= "Societe : $societe\n";
}
if ($fonction == ""){
echo("Vous n'avez renseigné votre fonction.<br>");
$Envoi = 0;
}
else {
$body .= "Fonction : $fonction\n";
}
if ($Envoi == 0) {
echo("<p><a href=\"Javascript:history.go(-1)\"><center><strong>RETOUR</strong></center></a></p>");
}
if ($Envoi == 1) {
echo("<p><strong>Etes vous intéressé ? <font color=\"#0000FF\">$Interet</font>\n");
echo("<br>Quand pourriez-vous faire appel a nos services ? <font color=\"#0000FF\">$appel</font>\n");
echo("<br>Si non pourquoi ? <font color=\"#0000FF\">$Si_NON_Pourquoi</font>\n");
echo("<br>Auriez vous d'autres besoins ? <font color=\"#0000FF\">$autres_besoins</font>\n");
echo("<br>Quelques commentaires ? <font color=\"#0000FF\">$Commentaires</font>\n");
echo("<br>Nom : <font color=\"#0000FF\">$Nom</font>\n");
echo("<br>Prénom : <font color=\"#0000FF\">$Prenom</font>\n");
echo("<br>Société : <font color=\"#0000FF\">$societe</font>\n");
echo("<br>Fonction : <font color=\"#0000FF\">$fonction</font>\n");
echo("<p> </p>");
mail($MailTo, $MailSubject, $body);
echo("<p>Votre message a bien été envoyé.<br>Merci de vos commentaires.");
echo("<p> </p><p> </p><p align=\"center\"><a href=\"index.htm\">Retour</strong></a></p>");
}
?>
</body>
</html>
<head>
</head>
<body>
<?
ini_set('sendmail_from', 'enquete@aol.com');
$Interet=$_POST['Interet'];
$Quel_interet=$_POST['Quel_interet'];
$appel=$_POST['appel'];
$Si_NON_Pourquoi=$_POST['Si_NON_Pourquoi'];
$autres_besoins=$_POST['autres_besoins'];
$Commentaires=$_POST['Commentaires'];
$Nom=$_POST['Nom'];
$Prenom=$_POST['Prenom'];
$societe=$_POST['societe'];
$fonction=$_POST['fonction'];
$MailTo = "jerome.smo@wanadoo.fr";
$MailSubject = "Enquete";
$Envoi = 1;
if ($Interet == ""){
echo("Merci de préciser votre interet<br>");
$Envoi = 0;
}
else {
$body= "Interet : $Interet\n";
}
$body .="Quel_interet :";
$items = 21;
for ($i = 0; $i <= $items; $i++) {
$body .= "\n$Quel_interet[$i]";
}
if ($appel == ""){
echo("Merci de préciser si vous désirez faire appel à nos service<br>");
$Envoi = 0;
}
else {
$body .= "\nappel : $appel\n";
}
$body .= "Si_NON_Pourquoi : $Si_NON_Pourquoi\n";
$body .= "autres_besoins : $autres_besoins\n";
$body .= "Commentaires : $Commentaires\n";
if ($Nom == ""){
echo("Vous n'avez renseigné votre nom.<br>");
$Envoi = 0;
}
else {
$body .= "Nom : $Nom\n";
}
if ($Prenom == ""){
echo("Vous n'avez renseigné votre prénom.<br>");
$Envoi = 0;
}
else {
$body .= "Prenom : $Prenom\n";
}
if ($societe == ""){
echo("Vous n'avez renseigné le nom de votre société.<br>");
$Envoi = 0;
}
else {
$body .= "Societe : $societe\n";
}
if ($fonction == ""){
echo("Vous n'avez renseigné votre fonction.<br>");
$Envoi = 0;
}
else {
$body .= "Fonction : $fonction\n";
}
if ($Envoi == 0) {
echo("<p><a href=\"Javascript:history.go(-1)\"><center><strong>RETOUR</strong></center></a></p>");
}
if ($Envoi == 1) {
echo("<p><strong>Etes vous intéressé ? <font color=\"#0000FF\">$Interet</font>\n");
echo("<br>Quand pourriez-vous faire appel a nos services ? <font color=\"#0000FF\">$appel</font>\n");
echo("<br>Si non pourquoi ? <font color=\"#0000FF\">$Si_NON_Pourquoi</font>\n");
echo("<br>Auriez vous d'autres besoins ? <font color=\"#0000FF\">$autres_besoins</font>\n");
echo("<br>Quelques commentaires ? <font color=\"#0000FF\">$Commentaires</font>\n");
echo("<br>Nom : <font color=\"#0000FF\">$Nom</font>\n");
echo("<br>Prénom : <font color=\"#0000FF\">$Prenom</font>\n");
echo("<br>Société : <font color=\"#0000FF\">$societe</font>\n");
echo("<br>Fonction : <font color=\"#0000FF\">$fonction</font>\n");
echo("<p> </p>");
mail($MailTo, $MailSubject, $body);
echo("<p>Votre message a bien été envoyé.<br>Merci de vos commentaires.");
echo("<p> </p><p> </p><p align=\"center\"><a href=\"index.htm\">Retour</strong></a></p>");
}
?>
</body>
</html>
je sens que tu va pas aimer, mais tes scripts marche très bien (à part les mails que je n'ai pas recu). j'ai fait :
echo($body);
juste avant l'envoi du mail en local sur easyphp. ca marche je l'ai mis également sur un site qui me sert à faire des test :
http://membres.lycos.fr/jeanmarieperso/jerome/Enquete.htm
ca marche bien aussi. tu constatera que je n'ai que les option cochées et pas d'erreur. A mon avis, il faut que tu vois ce probleme avec ton hebergeur
echo($body);
juste avant l'envoi du mail en local sur easyphp. ca marche je l'ai mis également sur un site qui me sert à faire des test :
http://membres.lycos.fr/jeanmarieperso/jerome/Enquete.htm
ca marche bien aussi. tu constatera que je n'ai que les option cochées et pas d'erreur. A mon avis, il faut que tu vois ce probleme avec ton hebergeur
OK ...
merci beaucoup pour ton aide :)
Je vais contacter la personne qui s'occupe de l'hébergement de mon site.
Encore une fois, mille merci :)
merci beaucoup pour ton aide :)
Je vais contacter la personne qui s'occupe de l'hébergement de mon site.
Encore une fois, mille merci :)
Je viens de trouver cet hébergeur apparemment gratuit avec PHP...
Le connais-tu ?
Tu pense que cela pourrais aller pour mon formulaire ?
Le connais-tu ?
Tu pense que cela pourrais aller pour mon formulaire ?
oups .... lol
le voila => http://www.pages-wp.fr/
je me suis inscrit mais au moment de recevoir le mail, ca a visiblement "déconné" pfff
le voila => http://www.pages-wp.fr/
je me suis inscrit mais au moment de recevoir le mail, ca a visiblement "déconné" pfff
Non, je ne les connais. Au niveau pro, je n'ai jamais bossé sur des hebergement gratuit. Du coté perso, j' ai un compte sur multimania pour "m'amuser" mais il sont pénible avec leur pub. désolé, mais pour ca, je ne pourrai pas t'aider.
Bon courage et au plaisir
Bon courage et au plaisir
Une dernièrer question (enfin j'espère lol)
I me faut du PHP4 ou 5 ou on ça n'est pas important ... ?
I me faut du PHP4 ou 5 ou on ça n'est pas important ... ?