- Statut : non résolu
- Ce sujet contient 40 réponses, 2 participants et a été mis à jour pour la dernière fois par Timama, le il y a 9 années et 6 mois.
-
AuteurMessages
-
23 mars 2015 à 8 h 07 min #998545Timama wrote:Dans ton message 11, si j’ai bien compris, c’est le passage de variable du formulaire à l’email. c’est ça ?
Mais ce n’est pas ça mon problème (si j’ai bien compris ton message 11).depuis le début tu dis que tu n’as pas la bonne adresse e-mail pour envoyer le message donc c’est bien ça le problème !
est ce que tu aurais une page où on pourrais voir ça ?23 mars 2015 à 8 h 17 min #998546🙂 ah oui mathieu9512, je crois que j’ai du mal à expliquer.
L’Email ne vient pas du formulaire, il vient du CPT de wordpress.Voici ma page, mais bon, j’ai fait affiché plein de chose…ce qui donne un rendu bizarre
http://club-d-affaires.de/fr/?langue=frtu verras que dans ma page accueil, je fasi aaaficher l’Email et le nom de l’évènement, là c’est bon, mais quand tu cliques sur le formulaire, c’est toujours le nom et Email du dernier evènement.
23 mars 2015 à 8 h 23 min #998547en fait j’ai l’impression que c’est le même formulaire qui est appelé pour chaque événement.
J’appelle effectivement le même php à chaque fois….hummmmm comment faire ça ….:search:
23 mars 2015 à 8 h 54 min #998548Timama wrote:🙂 ah oui mathieu9512, je crois que j’ai du mal à expliquer.
L’Email ne vient pas du formulaire, il vient du CPT de wordpress.oui mais que ce soit l’adresse e-mail oui l’identifiant de l’évènement, il faut passer l’information au formulaire pour qu’il sache quel choix à été fait
et c’est vrai qu’il vaut mieux éviter de mettre l’adresse e-mail dans le résultat en HTML sinon tu peux te faire spammer
ce que tu peux essayer pour faire passer l’information est de mettre l’identifiant dans le lien pour avoir ça par exemple :
<a href="#" class="poplight"> </a>
ensuite au moment du clic, il faut passer cette identifiant au formulaire
je serai tenter de créer la balise « input type=hidden » avec jQuery mais je ne sais pas si ce code va fonctionner, je te laisse tester$(« #inscriptionenligneform »).append(« »);
si ça fonctionne bien, dans le code d’envoi d’e-mail tu devrais récupérer cet identifiant dans $_POST[« idEvenement »] et tu pourras donc retrouver les informations de l’évènement
23 mars 2015 à 9 h 00 min #998549okay merci beaucoup mathieu9512, je regarde tout ça …
:search:
23 mars 2015 à 10 h 02 min #998550alors, j’ai fait ça
<a href="#" class="poplight"> </a>
avec
function appendEvent() {
$(« #inscriptionenligneform »).append( »);
}J’ai affiché l’id de l’évènement sur la page accueil (à côté du lien inscription en ligne) et dans le formulaire (tout en haut) mais c’est toujours le même problème :
Avant, j’avais le nom et l’Email du dernier évènement, maintenant j’ai l’ID du dernier évènement pour tous les évènements ….En même temps, je ne suis pas sûr de bien gérer le passage avec append, j’ai essayé pas mal de chose mais je ne sais même pas si cela fait quelque chose (apparemment non …)
donc c’est le même problème qu’avant. cela vient peut être d’où je place le code du formulaire mais si je le place dans la boucle, il m’envoit plein de fois le formulaire et si je le met en dehors et bien il prend les valeurs du dernier évènement.
je continue…..
:search:
23 mars 2015 à 10 h 41 min #998551regarde le code source de la page ci dessous
[c]$(« #inscriptionenligneform »).append( »);[/c]et compare avec le code que je t’ai donné
[c]$(« #inscriptionenligneform »).append(« »);[/c]tu vois la différence ?
23 mars 2015 à 11 h 02 min #998552bah en fait, non, il y en a peut être une mais là je ne vois pas du tout 😳
bon j’avais fait des essais en modifiant ce que tu avais mis et pusi là j’ai mis texto ce que tu avais mis au cas où car je vois pas du tout….
23 mars 2015 à 11 h 07 min #998553la différence c’est que dans mon code, le valeur est cherchée en fonction du lien cliqué
tu peux faire un « alert($(this).data(« idEvenement »)) » pour voir si ça passe bienet tu peux mettre ma ligne de code juste après la ligne « var popWidth = …. »
23 mars 2015 à 11 h 36 min #998554merci beaucoup mathieu9512 .. tu n’es pas passionné que par wp 😉
ouahhhh okay, je n’ai jamais fait ça, donc si c’est long, c’est parce que j’essaie de comprendre en même temps.
Donc j’ai sur ma page accueil
$id_evenement = $post->ID;
<h3><a href="#" data-width="630" data-rel="formulaire-inscriptionenligne" data-id-evenement=" » class= »poplight » > </a></h3>j’ai bien le bon id sur la page accueil et avec
$(« #inscriptionenligneform »).append(« »);
alert($(this).data(« idEvenement »));J’ai bien le bon id de l’évènement qui s’affiche dans le petit popup « alert »
Maintenant, faut que je récupère ce id dans le formulaire….. je cherche..
désolée.. j’ai jamais fait ça… j’ai même essayé de modifier le nom « data-id-evenement » mais ça à poser pb… 😉
oui, je sais … là c’est moi le problème, je sais 😳
je ne vois pas du tout comment retrouver la variable idEvenement dans la formulaire…donc je fais encore des recherches….
:search:
23 mars 2015 à 11 h 49 min #998555ça à l’air bon, j’ai vu sur ton site que la balise cachée est bien là
maintenant pour envoyer l’e-mail au bon endroit, tu peux récupérer l’identifiant dans $_POST[« idEvenenement »]
rajoute le code suivant après « if (isset($_POST)) { … » pour vérifier que tu récupères bien l’information :
echo $_POST[« idEvenenement »];
et ensuite tu pourras faire ça par exemple :
$email_evenement = get_post_meta($_POST[« idEvenenement »], ’email_evenement’, true );23 mars 2015 à 15 h 00 min #998556merci beaucoup mathieu9512, bon j’essai de comprendre… je t’avoue que pour le moment, j’ai pas encore tout compris….mais ça va venir.
ah okay, effectivement, dans le code source je vois bien que l’id passe (mieux vaut tard que jamais)
data-id-evenement= »288″ (pour le lien vers formulaire)mais je n’arrive pas à le faire passer dans le formulaire.
Admettons que j’y arrive (un jour j’espère, je vais chercher), ta manip permet de passer l’adresse Email pour l’envoi de
l’Email. Mais dans mon formulaire, j’ai le nom de l’évènement qui doit apparaître.Ca sera possible si j’arrive à faire passer l’Id au delà du lien ? ou alors c’est juste pour passer une variable cachée jusqu’à la validation du formulaire ?
23 mars 2015 à 15 h 38 min #998557pour afficher le nom de l’évènement, c’est presque pareil, d’abord mettre l’information dans le lien pour que le JavaScript la récupère dans le lien : [c]data-nom-evenement= » »[/c]
et ensuite au moment du clic, on met l’information dans le formulaire : [c]$(« #inscriptionenligneform .titre »).append($(this).data(« nomEvenement »));[/c]
23 mars 2015 à 15 h 42 min #998558okay, ça fonctionne.. j’avais du faire une erreur de frappe dans les noms des variables…..
merci beaucoup mathieu9512, là je n’aurai jamais réussi sans toi car c’est vraiment une partie de code que je ne connais pas du tout !
avec dans la page d’accueil, là où je mets la liste des évènements
<h3><a href="#" data-width="630" data-rel="formulaire-inscriptionenligne" data-id-evenement=" » class= »poplight » > </a></h3>
et dnas la partie envoi d’Email
if (isset($_POST[‘submitinscriptionenligne’]))
{
echo ‘ID après validation =’ .$_POST[« idEvenement »].’</br>‘;
$email_evenement = get_post_meta($_POST[« idEvenement »], ’email_evenement’, true );
$nom_evenement = get_post_meta($_POST[« idEvenement »], ‘nom_evenement’, true );
}ça envoi bien 1 seul mail à la bonne adresse.
Maintenant, il faut que je passe la variable « nom évènement » dans le formulaire, car le nom apparaît dans le formulaire… et là je l’ai toujours pas passer….
Je suppose que je peux y arriver avec tes infos 😉
23 mars 2015 à 15 h 43 min #998559ah bah mathieu9512, nos post se sont croisés..je vais donc regarder ton post 28 qui est arrivé en même temps que le mien 😉
merci encore !!!
-
AuteurMessages
- Le forum ‘Utilisation spécifique de WordPress’ est fermé à de nouveaux sujets et réponses.