Formulaire pour 6 destinataires

Fermé
JPLO Messages postés 14 Date d'inscription vendredi 24 août 2007 Statut Membre Dernière intervention 22 novembre 2009 - 11 janv. 2009 à 07:42
lewis34 Messages postés 2557 Date d'inscription samedi 21 juillet 2007 Statut Membre Dernière intervention 30 mai 2015 - 29 janv. 2009 à 21:43
Bonjour,
je voudrai faire un formulaire sur une page du site ,avec une phrase du genre :j'ai aprécié se site je vous en fait profité également....
La possibilitée pour la personne de l'envoyer à 5 connaissances de sont choix.
D'inscrire sont nom sont prénom,sont adresse.

Et de recevoir une copie de se mail.

Pouvez-vous m"aider?
A voir également:

5 réponses

lewis34 Messages postés 2557 Date d'inscription samedi 21 juillet 2007 Statut Membre Dernière intervention 30 mai 2015 352
11 janv. 2009 à 08:27
bonjour tu peut faire comme ça


<form name"envoimail" action="envoi_mail.php" method="post">
<label>Adresse email 1</label><p><input type="text" name="mail1" value="" id="mail1"></p>
<label>Adresse email 2</label><p><input type="text" name="mail2" value="" id="mail2"></p>
<label>Adresse email 3</label><p><input type="text" name="mail3" value="" id="mail3"></p>
<label>Adresse email 4</label><p><input type="text" name="mai4" value="" id="mail4"></p>
<label>Adresse email 5</label><p><input type="text" name="mail5" value="" id="mail5"></p>
</form>

et dans ta page envoi_mail.php

<?PHP
$mail1=$_post['mail1'];
$mail2=$_post['mail2'];
$mail3=$_post['mail3'];
$mail4=$_post['mail4'];
$mail5=$_post['mail5'];

   if(!empty($mail1)) // si il y a une adresse
   {
     if(mail($mail1,"sujet du message","j'ai apprécié se site je vous en fait profiter également.... ")) //envoi du mail
      {
       mail("ton adresse","sujet du message","un utilisateur viens d'envoyer un mail à $mail1"); // si le mail est parti       tu   recois un mail
      }
   else
     {
    mail("ton adresse","sujet","un probleme est survenu");
     }
   }

   if(!empty($mail2)) // si il y a une adresse
   {
   if(mail($mail2,"sujet du message","j'ai apprécié se site je vous en fait profiter également.... "))
     {
      mail("ton adresse","sujet du message","un utilisateur viens d'envoyer un mail à $mail2");
     }
     else
     {
     mail("ton adresse","sujet","un probleme est survenu");
     }
   }

//etc....


/*
c'est la solution la plus simple,tupeut aussi utiliser les tableaux (array) pour stocker les adresses et faitre une boucle qui parcours le tableau cree pour recuperer toutes les adresses
pense aussi a verifier que l'adresse mail est valide 
*/
?>
0
JPLO Messages postés 14 Date d'inscription vendredi 24 août 2007 Statut Membre Dernière intervention 22 novembre 2009
11 janv. 2009 à 10:35
Bonjour
Merci pour la réponse rapide
Je ne suis pas un pro de la conception des formulaires comme tu la compris et encore moins du PHP

Un peut plus de précision sur la page envoi mail.php serait le bienvenu
0
Lefouerrant Messages postés 567 Date d'inscription mercredi 19 décembre 2007 Statut Membre Dernière intervention 1 octobre 2009 116
11 janv. 2009 à 11:26
tu peux essayer ceci :

<?
$adresses=array($_POST["mail1"],$_POST["mail2"],$_POST["mail3"],$_POST["mail4"];$_POST["mail5]);
while(list($i,$v)=each($adresses)) {
  if(!empty($v)) {
    if(!mail($v,"J'ai apprécié ce site","Bonjour, j'ai beaucoup apprécié ce site et je t'envoie son addresse : <l'adresse de ton site>")) {
      mail("<ton e-mail>","Problème","il y a eu un problème lors de l'envoi d'un e-mail");
      echo "Un probl&egrave;me est survenu";
      exit;
    }
  }
}
?>


ce code met dans un tableau tous les champs du formulaire et il les traite l'un a près l'autre
si le champ n'est pas vide, il est traité
sinon il ne l'est pas
il envoie le mail, si le mail n'a pas été envoyé, il t'envoie un message d'erreur, il informe l'utilisateur et il arête le script.

ce qui est en gras est à modifier
0
lewis34 Messages postés 2557 Date d'inscription samedi 21 juillet 2007 Statut Membre Dernière intervention 30 mai 2015 352
11 janv. 2009 à 11:29
re,
le code que je t'ai mis est le plus simple qu'il soit pour debuter je t'explique rapidement le principe :

le php est un langage serveur,c'est à dire que le code que tu envoi via un formaulaire est traité chez toi (sur ton serveur)
tu a 2 manieres de transmettre des valeurs metho post ou method get
la methode post est la plus sure l'utilisateur ne vois pas les variables envoyée
la methode get se sert de l'adresse url exemple www.monsite.fr?variable1=test1&variable2=montest2

ici les 2 valeurs transmises seront variable1 et variable2 avec comme valeurs respectives test1 et test2
en method get tu voit clairement dans la barre d'adresse ce que tu envoi ,ce qui peut poser des pb de securite.

ensuite la page que j'ai appelée envoi_mail.php est la page de destination,celle ou tu recupere les variables à traiter
dans cette page j'ai mis $mail1=$_post['mail1'];
qui correspond a la valeur contenu dans l'input de name mail1 situé dans la page d'origine (celle qui contient ton formulaire)
et ainsi de suite
$mail2=$_post['mail2'];==> valeur de l'input de name mail2
etc...

le if(!empty($mail1)) signifie que si $mail1 n'est pas vide alors on effectue le traitement (j'aurais pu mettre aussi if(isset($mail1)) la cela signifie que si la variable $mail1 existe je fait le traitement

j'ai mis surtout $_post car la methode employée pour transmettre les variable est determiné dans ton formulaire à cette endroit
<form name"envoimail" action="envoi_mail.php" method="post">


j'aurais voulu utiliser la method get j'aurais mis dans le formulaire method="get" et dans la page envoi_mail.php
$mail1=$_get['mail1'];


dans un formulaire la ligne <form name"envoimail" action="envoi_mail.php" method="post">
est tres importante
d'une part elle permet de définir la methode utilisée ,comme je viens de te le montrer ,mais aussi le fichier à appeler pour traiter les variables avec la balise action,c'est ici que tu indique ou tu veut que ton traitement se fasse.

Pour ton cas précis ,le plus simple est de creer une nouvelle page, mais tu verra que tu peut tout a fait appeler la meme page et effectuer le traitement, c'est juste un petit peu plus complexe à coder.

ensuite pour cette ligne
if(mail($mail1,"sujet du message","j'ai apprécié se site je vous en fait profiter également.... "))

j'utilise la fonction mail de php dont la syntaxe est mail=(destinataire,sujet,message)

donc si le mail est envoyé j'ai fait en sorte que tu recoive un mail te l'indiquant ici :

if(mail($mail1,"sujet du message","j'ai apprécié se site je vous en fait profiter également.... ")) //envoi du mail
      {
       mail("ton adresse","sujet du message","un utilisateur viens d'envoyer un mail à $mail1"); // si le mail est parti       tu   recois un mail
      }
   else
     {
    mail("ton adresse","sujet","un probleme est survenu"); le mail est pas parti
     }


quand a la verification de l'adresse mail cela consite simplement a verifier si l'adresse est valide en testant la presence du symbole @ et du .
voila un exemple

//verification quel 'adresse mail est valide
$test_mail=eregi ('^[_a-z0-9-]+(.[_a-z0-9-]+)*@[a-z0-9-]+(.[a-z0-9-]+)+$', $_POST['mail1']); 
if($test_mail)
{
echo 'adresse valide';
}
else
{
echo 'adresse pas valide';
}



en ce qui concerne les tableaux comme je me suis douté que tu debutais je ne t'en ai pas parlé ,mais c'est la solution la plus propre pour traiter ce genre de requetes
voila un peu dans le desordre quelques explications qui je l'espere t'eclairerons
@+
0
JPLO Messages postés 14 Date d'inscription vendredi 24 août 2007 Statut Membre Dernière intervention 22 novembre 2009
29 janv. 2009 à 20:27
bonjour
merci pour ta réponse
j'ai mis le premier code

par contre je ne s'ai pas ou mettre le code (envoi_mail.php)
0

Vous n’avez pas trouvé la réponse que vous recherchez ?

Posez votre question
lewis34 Messages postés 2557 Date d'inscription samedi 21 juillet 2007 Statut Membre Dernière intervention 30 mai 2015 352
29 janv. 2009 à 21:43
pour faire simple dans une nouvelle page qui s'appelle envoi_mail.php et qui est appellé dans ton form <form name"envoimail" action="envoi_mail.php" method="post">
0