Formulaire choix $to en fonction d'un autre champs

Résolu/Fermé
PJ47 Messages postés 77 Date d'inscription jeudi 2 mars 2023 Statut Membre Dernière intervention 27 février 2024 - 2 mars 2023 à 09:42
yg_be Messages postés 22732 Date d'inscription lundi 9 juin 2008 Statut Contributeur Dernière intervention 28 avril 2024 - 2 mars 2023 à 16:52

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

A voir également:

4 réponses

yg_be Messages postés 22732 Date d'inscription lundi 9 juin 2008 Statut Contributeur Dernière intervention 28 avril 2024 1 477
2 mars 2023 à 12:43

bonjour,

peux-tu donner un exemple?

0
PJ47 Messages postés 77 Date d'inscription jeudi 2 mars 2023 Statut Membre Dernière intervention 27 février 2024 1
2 mars 2023 à 14:14

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

0
yg_be Messages postés 22732 Date d'inscription lundi 9 juin 2008 Statut Contributeur Dernière intervention 28 avril 2024 1 477
2 mars 2023 à 14:40

peut-être:

switch ($_POST['field_315591b6_f34f_4b93_8cf2_35dd3e90412b']) {
    case 32:
        $to='mail1';
        break;
    case 46:
        $to='mail2';
        break;
    case 47:
        $to='mail3';
        break;
    default:
       $to='?';
}
0
PJ47 Messages postés 77 Date d'inscription jeudi 2 mars 2023 Statut Membre Dernière intervention 27 février 2024 1
2 mars 2023 à 14:46

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

0
yg_be Messages postés 22732 Date d'inscription lundi 9 juin 2008 Statut Contributeur Dernière intervention 28 avril 2024 1 477
2 mars 2023 à 14:49

oui, cela me semble le bon endroit.

0
PJ47 Messages postés 77 Date d'inscription jeudi 2 mars 2023 Statut Membre Dernière intervention 27 février 2024 1
2 mars 2023 à 15:01

MERCIIIIIIIIIII !!!!!!!!!!!!!!!!!! 

merci @yg_be StatutContributeur , merci beaucoup cela fonctionne parfaitement. 

0
yg_be Messages postés 22732 Date d'inscription lundi 9 juin 2008 Statut Contributeur Dernière intervention 28 avril 2024 1 477
2 mars 2023 à 16:52

parfait!  peux-tu alors marquer la discussion comme résolue?

1