Formulaire choix $to en fonction d'un autre champs
Résoluyg_be Messages postés 23541 Date d'inscription Statut Contributeur Dernière intervention -
Bonjour,
je souhaite envoyer mon formulaire à une personne différente en fonction de la valeur d'une liste déroulante choisie par l'internaute.
je ne sais pas comment l'ecrire dans mon code.
voici ce que j'ai actuellement pour un envoie simple.:
<?php $destinataire ='***@***,***@***'; // Pour les champs $expediteur / $copie / $destinataire, // séparez par une virgule s'il y a plusieurs adresses $expediteur = $_POST["field_c2f732f3_e2d4_4225_944f_73fe276a2b48"]; $copie = '***@***'; $objet = $_POST["field_535915a6_c5d5_4d0f_911f_2dc418eac0ca"]." Societe"." ".$_POST["field_315591b6_f34f_4b93_8cf2_35dd3e90412b"]; // Objet du message $headers = 'MIME-Version: 1.0' . "\n"; // Version MIME $headers .= 'Reply-To: '.$expediteur."\n"; // Mail de reponse $headers .= 'From:<'.$expediteur.'>'."\n"; // Expediteur $headers .= 'Delivered-to: '.$destinataire."\n"; // Destinataire $headers .= 'Cc: '.$copie."\n"; // Copie Cc $headers .= 'Bcc: '.$copie_cachee."\n\n"; // Copie cachée Bcc $message = "Nom : ".$_POST["field_bd94f5f9_31ec_45c4_87d2_73cfee141df0"]."\n". "Prénom : ".$_POST["field_70cb7baf_784a_4fed_8de5_9e4eb671cef2"]."\n". "Téléphone : ".$_POST["field_27de056e_f018_4cd9_b577_62939f8e9858"]."\n". "Email : ".$_POST["field_c2f732f3_e2d4_4225_944f_73fe276a2b48"]."\n". "Code postal des travaux : ".$_POST["field_434e8438_c20a_4294_a8c4_77ba0bee928d"]."\n". "Travaux : ".$_POST["field_535915a6_c5d5_4d0f_911f_2dc418eac0ca"]."\n". "Département : ".$_POST["field_315591b6_f34f_4b93_8cf2_35dd3e90412b"]."\n". "message : ".$_POST["field_ac4c7e9f_8a56_48e1_b449_b8256e0564ca"]; $success = false; $error_string=""; if (mail($destinataire, $objet, $message,$headers)) // Envoi du message { $success=true; } else // { $success=false; $error_string="Non envoyé !"; } echo json_encode(['success'=>$success,'message'=>$error_string]);
je vous drai s faire en soret de choisir le destinataire du mail en focntion de la valeur du champ
"Département : ".$_POST["field_315591b6_f34f_4b93_8cf2_35dd3e90412b"]
est ce possible?
coment m'y prendre pour rediger le if?
merci
- Formulaire choix $to en fonction d'un autre champs
- Whatsapp formulaire opposition - Guide
- Fonction si et - Guide
- Formulaire de réclamation facebook - Guide
- Liste déroulante de choix excel - Guide
- Qwerty to azerty - Guide
4 réponses
bonjour,
peux-tu donner un exemple?
Bonjour,
Ma liste déroulante contient 3 valeurs :
<select data-uuid-form="{fc7b03d9-65df-4b9e-bd15-2867a7f9abef}" class="wafx-form-input wafx-form-list select-css" name="field_315591b6_f34f_4b93_8cf2_35dd3e90412b" required=""> <option value="" label="dpt">dpt</option> <option value="32" label="32">32</option> <option value="46" label="46">46< /option><option value="47" label="47">47</option> </select>
je souhaiterai pouvoir écrire une condition dans ce style
Si .$_POST['field_315591b6_f34f_4b93_8cf2_35dd3e90412b']==="32" => $to:'mail1';
Si .$_POST['field_315591b6_f34f_4b93_8cf2_35dd3e90412b']==="46" => $to:'mail2';
Si .$_POST['field_315591b6_f34f_4b93_8cf2_35dd3e90412b']==="47" => $to:'mail3';
merci
Merci @yg_be StatutContributeur, je vais essayer.
du coup mon code de départ deviendrait :
<?php
$destinataire ='';
switch ($_POST['field_315591b6_f34f_4b93_8cf2_35dd3e90412b']) {
case 32:
$destinataire ='mail1';
break;
case 46:
$destinataire ='mail2';
break;
case 47:
$destinataire ='mail3';
break;
default:
$destinataire ='?';
}
// Pour les champs $expediteur / $copie / $destinataire,
// séparez par une virgule s'il y a plusieurs adresses
$expediteur = $_POST["field_c2f732f3_e2d4_4225_944f_73fe276a2b48"];
$copie = '***@***';
$objet = $_POST["field_535915a6_c5d5_4d0f_911f_2dc418eac0ca"]." Societe"." ".$_POST["field_315591b6_f34f_4b93_8cf2_35dd3e90412b"]; // Objet du message
$headers = 'MIME-Version: 1.0' . "\n"; // Version MIME
$headers .= 'Reply-To: '.$expediteur."\n"; // Mail de reponse
$headers .= 'From:<'.$expediteur.'>'."\n"; // Expediteur
$headers .= 'Delivered-to: '.$destinataire."\n"; // Destinataire
$headers .= 'Cc: '.$copie."\n"; // Copie Cc
$headers .= 'Bcc: '.$copie_cachee."\n\n"; // Copie cachée Bcc
$message = "Nom : ".$_POST["field_bd94f5f9_31ec_45c4_87d2_73cfee141df0"]."\n".
"Prénom : ".$_POST["field_70cb7baf_784a_4fed_8de5_9e4eb671cef2"]."\n".
"Téléphone : ".$_POST["field_27de056e_f018_4cd9_b577_62939f8e9858"]."\n".
"Email : ".$_POST["field_c2f732f3_e2d4_4225_944f_73fe276a2b48"]."\n".
"Code postal des travaux : ".$_POST["field_434e8438_c20a_4294_a8c4_77ba0bee928d"]."\n".
"Travaux : ".$_POST["field_535915a6_c5d5_4d0f_911f_2dc418eac0ca"]."\n".
"Département : ".$_POST["field_315591b6_f34f_4b93_8cf2_35dd3e90412b"]."\n".
"message : ".$_POST["field_ac4c7e9f_8a56_48e1_b449_b8256e0564ca"];
$success = false;
$error_string="";
if (mail($destinataire, $objet, $message,$headers)) // Envoi du message
{
$success=true;
}
else //
{
$success=false;
$error_string="Non envoyé !";
}
echo json_encode(['success'=>$success,'message'=>$error_string]);
je sais pas si c'est à cet endroit que je dois placer mon code ?
merci encore pour ton aide.
J