Formulaire "amelioré"

wesrush Messages postés 1282 Statut Membre -  
wesrush Messages postés 1282 Statut Membre -
bonjour,
en plein apprentissage dreamweaver et .php j'ai créé un formulaire de contact en voici le code:
<?php
$to = "*******@hotmail.fr";
$subject = $_POST['subject'];
$body = $_POST['body'];
$headers = $_POST['emailAddress'];
mail($to,$subject,$body,$headers);
?>

j'aimerai maintenant envoyer ce formulaire a deux adresses differentes, et aussi
pour le corps du message $body recuperer plusieurs champs textes,
quelqu'un pourrai il m'aider SVP?
d'avance merci pour vos reponses...

2 réponses

wesrush Messages postés 1282 Statut Membre 40
 
bon j'ai essayé avec ce code là mais ça ne fonctionne pas..

<?php
$to = "*******@hotmail.fr"."*********@hotmail.fr";
$subject = $_POST['subject'];
$body = $_POST['body'];
$body = $_POST['body2'];
$headers = "From:". $_POST['emailAddress'];
mail($to,$subject,$body,$headers);
?>
0
Dalida Messages postés 7114 Date d'inscription   Statut Contributeur Dernière intervention   923
 
salut,

pour les destinataires il doit falloir les séparer par un point virgule.
pour le $body il fut concaténer et il faudra peut être ajouter un retour à la ligne.
$to = "mail1@hotmail.fr; mail2@hotmail.fr";
$body = $_POST['body']."/n"; 
$body .= $_POST['body2']; 

si un codeur php averti pouvait me confirmer…

bon courage !
0
wesrush Messages postés 1282 Statut Membre 40 > Dalida Messages postés 7114 Date d'inscription   Statut Contributeur Dernière intervention  
 
ah une reponse enfin; merci a toi dalida...

pourquoi le ."/n" ?
et pourquoi.= ?

attends je vais essayer avant d'ouvrir ma grande gu...

un grand merci a toi!!!
0
wesrush Messages postés 1282 Statut Membre 40
 
bon alors là je me permet de te corriger pour les destinataires c'est:

$to = "******@hotmail.fr";"******@hotmail.fr";

en tous cas tu m'a mis sur la voie , merci...

pour le reste ça fonctionne aussi effectivement,
je vais etre chiant là mais pour $body je reçois tout collé sur ma boite mail pour body1 et body2,comment faire pour remettre a la ligne pour chaque champ texte?
0
Dalida Messages postés 7114 Date d'inscription   Statut Contributeur Dernière intervention   923 > wesrush Messages postés 1282 Statut Membre
 

le '.=' c'est un opérateur d'assignation combiné. le '=' permet l'assignation et le '.' indique qu'il faudra concaténer la deuxième chaine à la première (la deuxième est "collée" au bout de la première) au lieu de remplacer la première chaine par la deuxième.
la concaténation chez Php Débutant et l'opérateur combiné chez PHP France.

le '/n' c'est pour le retour à la ligne et éviter d'avoir les deux blocs collés mais je me suis trompé… il faut '\r\n'.
cela permet d'indiquer une fin de ligne (line feed) et un retour chariot (carriage return).
je l'ai retrouvé dans l'article du manuel php consacré à la fonction mail (tu y trouveras aussi les destinataires mulitiples).
0
wesrush Messages postés 1282 Statut Membre 40
 
merci encore pour tout ces lien je regarderai ça au clair demain matin ...
0