Récupérer un select multiple dans le corps d'un mail
Résolu/Fermé
A voir également:
- Récupérer un select multiple dans le corps d'un mail
- Comment recuperer un message supprimé sur whatsapp - Guide
- Yahoo mail - Accueil - Mail
- Comment récupérer un compte facebook piraté - Guide
- Recuperer video youtube - Guide
- Publipostage mail - Accueil - Word
6 réponses
jordane45
Messages postés
38350
Date d'inscription
mercredi 22 octobre 2003
Statut
Modérateur
Dernière intervention
26 décembre 2024
4 719
18 févr. 2021 à 11:25
18 févr. 2021 à 11:25
Bonjour,
Commence par faire un print_r de ta variable $_POST pour voir à quoi elle ressemble lors tu selectionnes plusieurs valeurs.
Normalement.. tu devrais y voir un array..
De là, il ne te reste plus qu'à faire une boucle pour récupérer toutes les valeurs dans ton mail.
PS: à l'avenir, merci d'utiliser les balises de code pour poster du code sur le forum.
Explications ( à lire entièrement ! ) disponibles ici :
https://codes-sources.commentcamarche.net/faq/11288-les-balises-de-code
Commence par faire un print_r de ta variable $_POST pour voir à quoi elle ressemble lors tu selectionnes plusieurs valeurs.
print_r($_POST);
Normalement.. tu devrais y voir un array..
De là, il ne te reste plus qu'à faire une boucle pour récupérer toutes les valeurs dans ton mail.
$values = !empty($_POST['maliste']) ? $_POST['maliste'] : NULL; if($values ){ foreach ($values as $a){ echo $a; } }
PS: à l'avenir, merci d'utiliser les balises de code pour poster du code sur le forum.
Explications ( à lire entièrement ! ) disponibles ici :
https://codes-sources.commentcamarche.net/faq/11288-les-balises-de-code
Voilà, je suis débutant en PHP, l'erreur est surement là, mais je n'y arrive pas
print_r($_POST); $values = !empty($_POST['liste-choix-titre-pop-liste']) ? $_POST['liste-choix-titre-pop-liste'] : NULL; if($values ){ foreach ($values as $a){ echo $a; } } $destinataire = '***@***'; // Pour les champs $expediteur / $copie / $destinataire, séparer par une virgule s'il y a plusieurs adresses $expediteur = $_POST['email']; $objet = $_POST['subject']; $headers = 'MIME-Version: 1.0' . "\n"; // Version MIME $headers .= 'Content-type: text/html; charset=utf-8'."\n"; // l'en-tete Content-type pour le format HTML $headers .= 'From: '.$_POST['email'].'<'.$expediteur.'>'."\n"; // Expediteur $message = '<div style="width: 100%; text-align: left;"> une case de mon formualire : '.$_POST['caseformulaire'].' une autre case de mon formualire : '.$_POST['autrecaseformulaire'].' ICI JE VEUX QUE S'INSCRIVE LES CHOIX DE MA LISTE </div>';
yg_be
Messages postés
23408
Date d'inscription
lundi 9 juin 2008
Statut
Contributeur
Dernière intervention
26 décembre 2024
1 557
18 févr. 2021 à 13:26
18 févr. 2021 à 13:26
bonjour, peux-tu partager ce qui est affiché par le print_r?
Array([maliste] => mondernierchoix)
yg_be
Messages postés
23408
Date d'inscription
lundi 9 juin 2008
Statut
Contributeur
Dernière intervention
26 décembre 2024
1 557
18 févr. 2021 à 14:00
18 févr. 2021 à 14:00
d'où viennent
'liste-choix-titre-pop-liste'et
mondernierchoix?
jordane45
Messages postés
38350
Date d'inscription
mercredi 22 octobre 2003
Statut
Modérateur
Dernière intervention
26 décembre 2024
4 719
18 févr. 2021 à 14:00
18 févr. 2021 à 14:00
Au niveau de ton select, ajoute des crochet au niveau du name
<select name="maliste[]"
@yg_be c'est le nom de maliste (le vrai nom ^^) et mon dernierchoix c'est le dernier truc selectionné dans ma liste.
@jordane45 maintenant le print renvoi
Array([maliste] => Array ([0] => mon 1er choix [1] => mon deuxieme choix))
mais le mail que je reçoit ne mention que le deuxième choix
@jordane45 maintenant le print renvoi
Array([maliste] => Array ([0] => mon 1er choix [1] => mon deuxieme choix))
mais le mail que je reçoit ne mention que le deuxième choix
jordane45
Messages postés
38350
Date d'inscription
mercredi 22 octobre 2003
Statut
Modérateur
Dernière intervention
26 décembre 2024
4 719
Modifié le 18 févr. 2021 à 14:57
Modifié le 18 févr. 2021 à 14:57
Et bien donc,
Il faut boucler dessus pour afficher les infos dans le mail
Il faut boucler dessus pour afficher les infos dans le mail
$values = !empty($_POST['liste-choix-titre-pop-liste']) ? $_POST['liste-choix-titre-pop-liste'] : NULL; $destinataire = '***@***'; // Pour les champs $expediteur / $copie / $destinataire, séparer par une virgule s'il y a plusieurs adresses $expediteur = $_POST['email']; $objet = $_POST['subject']; $headers = 'MIME-Version: 1.0' . "\n"; // Version MIME $headers .= 'Content-type: text/html; charset=utf-8'."\n"; // l'en-tete Content-type pour le format HTML $headers .= 'From: '.$_POST['email'].'<'.$expediteur.'>'."\n"; // Expediteur $message = '<div style="width: 100%; text-align: left;"> une case de mon formualire : '.$_POST['caseformulaire'].' une autre case de mon formualire : '.$_POST['autrecaseformulaire']; if($values ){ foreach ($values as $a){ $message .= $a; } } $message .=' </div>';
yg_be
Messages postés
23408
Date d'inscription
lundi 9 juin 2008
Statut
Contributeur
Dernière intervention
26 décembre 2024
1 557
18 févr. 2021 à 14:59
18 févr. 2021 à 14:59
@Greg cela n'aide pas si tu embrouilles ce que tu nous montres.
Vous n’avez pas trouvé la réponse que vous recherchez ?
Posez votre question
Merci beaucoup ça fonctionne, mais ça m'inscrit mes différents choix sans espace
"choix 1choix2"
il y a une solution pour les espacé ou mettre une virgule?
"choix 1choix2"
il y a une solution pour les espacé ou mettre une virgule?
jordane45
Messages postés
38350
Date d'inscription
mercredi 22 octobre 2003
Statut
Modérateur
Dernière intervention
26 décembre 2024
4 719
18 févr. 2021 à 16:03
18 févr. 2021 à 16:03
Oui, tu peux concaténer la variable $a avec ce que tu veux...
18 févr. 2021 à 11:47
Malheureusement, je dois faire un truc de mal parce que ça ne me change rien.
Que dois-je mettre dans cette partie de code pour que cela fonctionne?
Merci
PS: désolé de pas avoir utiliser les balises
18 févr. 2021 à 12:30
et on verra comment t'aider à le corriger.