Une fois le formulaire et les champs créés formidable propose de « configurer les traitements ». Cet article vise à préciser ou compléter quand ça semble nécessaire certains choix présents.
Les fonctions listées sont valable avec la version 4.4.0 du plugin.
Le premier choix consiste à savoir si on veut :
- « Enregistrer les résultats du formulaire dans la base de données »
- « Poster par courriel le résultat du formulaire à une liste de destinataires »,
- Les choix ne sont pas exclusifs.
Enregistrer les résultats du formulaire dans la base de données
Une fois cette case cochée, un certain nombre d’options s’affichent. Il est notamment possible de rendre les réponses au formulaire :
- Multiples : une même personne peut répondre plusieurs fois.
- Modifiables : les visiteurs peuvent modifier leurs réponses après coup.
Méthode d’identification
Dans le cas ou votre formulaire comprend des réponses modifiables ou uniques, un encart apparaîtra afin de définir une méthode d’identification des réponses :
- Soit par cookie. L’identification dépendra du navigateur sur lequel l’utilisateur rempli le formulaire. Si celui-ci n’autorise pas les cookies, l’identifiant de la personne authentifiée et la méthode d’identification par variable de connexion PHP seront utilisées à la place de cette méthode.
- Soit par identifiant de la personne identifiée. Utile pour les formulaires nécessitant la création d’un compte à priori. Si l’utilisateur n’est pas connecté, la méthode d’identification par cookie sera utilisée à la place de cette méthode, ou a défaut la variable de connexion PHP (sauf en cas d’anonymisation des identifiants).
- Soit par identifiant de la réponse passée explicitement lors de l’appel au formulaire dans un squelette. Cette méthode permet de forcer l’affichage d’une réponse particulière.
- Soit par variable de connexion PHP. L’identification dépendra d’une variable d’environnement fournie par l’utilisateur. Si celle-ci n’existe pas, l’identifiant de la personne authentifiée et l’identification par cookies seront utilisées à la place de cette méthode.
Protection des données personnelles
Il est également possible de paramétrer la protection des données personnelles des utilisateurs :
- En ne conservant pas l’identifiant de la personne connectée. Si la méthode d’identification est justement cet identifiant, celui-ci sera d’abord crypté avant d’être stocké en base).
- En demandant l’effacement des résultats les plus anciens de la table. Une fois la case cochée, il sera possible de définir le nombre de jours pendant lesquels on garde l’enregistrement avant d’effacer.
- En choisissant d’enregistrer ou non les IPs des utilisateurs. Ces IP seront hashés après un délai de garde.
Autres options disponibles
Elles concernent :
- La modération de l’enregistrement :
- à priori, les réponses sont modérées automatiquement, sauf pour les administrateur trice s (mais on peut ajouter une option pour modérer aussi pour ces personnes) ;
- à posteriori, les réponses sont à modérer manuellement.
- L’exclusion des champs de l’analyse des résultats proposée par formidable.
- Le rafraîchissement du cache à chaque enregistrement de réponses. Utile si les réponses sont publiques ou si on veut afficher publiquement le nombre de réponses.
Poster par courriel le résultat du formulaire à une liste de destinataires.
Une fois coché ce choix une série de champs est proposée, répartis en cinq groupes :
Destinataires du courriel
- Sujet du courriel
- Contenu du courriel
- Destinataires du courriel
- Expéditeur du courriel
- Accusé de réception
Sujet du courriel
Il est possible de personnaliser le Sujet du courriel avec les @raccourcis@ (sinon il sera construit automatiquement) et de choisir de n’y mettre que des Valeurs brutes si le mail doit être traité par un robot et non un humain.
Contenu du courriel
Possibilités de personnalisation :
- *Champs à exclure du contenu du message ;
- * Faut-il « Joindre les fichiers dans le courriel »,
- * « Masquer les liens d’administration dans le courriel »
- * « Envoyer l’adresse IP de l’envoyeur aux destinataires »
- * Masquer les champs vide
Concernant les Champs à exclure du contenu du message, comme indiqué dans le placeholder les champs doivent être exclus sous la forme « input_3,selection_2 »
Depuis la révision 110166 il est possible d’exclure les champs sous la forme @raccourcis@
Destinataires du courriel
Trois choix possibles : Destinataires, Destinataires supplémentaires, Destinataires en fonction d’un champ.
Le premier choix Destinataires ne pourra comprendre que des champs de type « hidden » ou « destinataires ». Le type de champ Destinataires permet de choisir parmi une liste de rédacteurs du site quels seront ceux qui sont informés du remplissage du formulaire.
Le champ Destinataires supplémentaires permet, comme son nom l’indique, d’envoyer un formulaire à un ou plusieurs destinataires en fournissant des adresses directement dans le champ.
Enfin, Destinataires en fonction d’un champ permet d’envoyer le formulaire à des interlocuteurs différents en fonction des choix. Attention toutefois pour que ça fonctionne bien il faut que soit proposé un mail pour chaque choix, ou, s’il y a des choix non définis ici, qu’un destinataire soit défini par ailleurs.
Expéditeur du courriel
Trois champs possibles Courriel de l’envoyeur, faut-il « Insérer le courriel de l’envoyeur dans le champ « From » » et le Nom de l’envoyeur
Courriel de l’envoyeur : ne pas oublier de renseigner ce champ si on utilise le message de confirmation ou accusé de réception
Accusé de réception
L’accusé de réception ne peut être demandé que si le courriel de l’envoyeur est préalablement renseigné. Alors il devient possible de cocher Envoyer aussi un courriel à l’adresse de l’envoyeur avec un message de confirmation.
Il est ensuite possible de définir le Sujet de l’accusé de réception, de préciser un Courriel de l’accusé de réception et de forcer un Nom de l’expéditeur de l’accusé de réception
Discussions par date d’activité
23 discussions
Bonjour,
Je tente de chainer 2 formulaires proprement ... J’ai simplement besoin de récupérer dans une seconde page par ex. l’identifiant du premier formulaire, à partir de là je peux faire une boucle pour récupérer les données dont j’aurais besoin.
Je vois 2 pistes pour l’instant :
- réussir à passer une variable d’environnement lors de la validation du premier formulaire à la seconde page, je vais tester voir si un #ENV avec le nom d’un des champs du premier formulaire retourne quelque chose. Malheureusement je ne pense pas qu’il soit possible de récupérer l’id de la réponse qui doit être créé après la validation
- réussir à ajouter une valeur au cookie de session avec un #SESSION_SET ou un bout de PHP (mais bon j’ai dit proprement ... hum) quelque part ...
Pensez vous qu’une de ces 2 pistes soit possible ?
Pierre
tu pourrais configurer le premier formulaire pour qu’après il rediriger vers la page du second, en passant comme paramètre d’url l’identifiant du premier.
En soit on pourrait mettre 2 raccourics dans cette config permettant de mettre l’id réponse et l’id de formulaire.... faut juste prendre le temps de le coder.
Répondre à ce message
Bonjour,
j’ai exactement le même besoin.
J’ai surchargé le fichier notifications/formulaire_accuse.html en ajoutant dans le squelette une ligne contenant : "réponse n°
#ENV{id_formulaires_reponse}
, mais cela ne fonctionne pas.Quelle est la bonne façon de procéder ?
Merci beaucoup d’avance,
Manu
Quel besoin ?
formulaire_accuse.html
est pour l’accusé de réception envoyé à la personne qui poste le formulaire.formulaire_email.html
est pour l’email envoyé aux administrateurs du site.C’est de la que bient le eproblème peut être ?
ton mail sur la liste m’a permis de mieux comprendre ton problème : c’est bien dans l’accusé de réception que tu veux l’id de réponse,
La version 3.17.0 fournit désormais l’id en argument du squelette
formulaire_accuse.html
.Merci de ta réponse.
J’ai besoin que ces deux mails (l’accusé de réception ainsi que le mail envoyé au site) comportent cette information.
Mon souci est de savoir comment récupérer la valeur de id_formulaires_reponse pour l’intégrer dans chacun de ces mails.
Pour voir ce qui existait dans l’environnement, j’ai mis
[<pre> (#ENV**|unserialize|print_r{1})</pre>]
dans formulaire_accuse.html. Pas de trace de id_formulaires_reponse dans ce qui est retourné du coup je suis un peu perdu.Ah, nos deux mails se sont croisés !
Je viens de mettre à jour formidable et du tout, c’est OK pour l’accusé de réception : on récupère bien l’id de la réponse. Parfait !
Du coup, est-ce qu’il ne serait pas intéressant d’avoir cette même fonctionnalité dans formulaire_email ? On aurait ainsi quelque chose de cohérent : l’expéditeur et l’administrateur du site auraient une information commune permettant de faciliter l’exploitation des réponses ? Qu’en penses-tu ?
c’est deja dans formulaire_email
Ah, oui, effectivement (et désolé du dérangement sur ce coup-là)
Merci infiniment, et ça se confirme à chaque fois, SPIP, c’est chouette !
Répondre à ce message
Bonjour, quelqu’un peux m’expliquer comment afficher id_formulaire_reponse dans le mail de confirmation formidable ? Je voudrais bien avoir un id de chaque email recu.
Merci
Tu peux surcharger le squelettes de notification en copiant le squelettes
notifications/formulaire_email.html
dans ton dossier de squeklettes (en reprenant la hierarchie).Ensuites tu peux récuperer via
#ENV{id_formulaires_reponse}
Merci beaucoup Maïeul, ça marche à merveille !!!
Comment créer un lien de réponse à l’expediteur du formulaire dans le mail réçu ? j’ai essayé avec ce code :
mailto:#ENVemail_formulaires_reponse mais ça ne marche pas.
La version 3.15.0, juste commité sur la zone, permet d’utiliser
#ENV{courriel_envoyeur}
et#ENV{nom_envoyeur}
Merci beaucoup
Répondre à ce message
Ajouter un commentaire
Avant de faire part d’un problème sur un plugin X, merci de lire ce qui suit :
Merci d’avance pour les personnes qui vous aideront !
Par ailleurs, n’oubliez pas que les contributeurs et contributrices ont une vie en dehors de SPIP.
Suivre les commentaires : |