Envoi d'un fichier à l'utilisateur après remplissage d'un formulaire BreezingForms

J'aimerais, lorsqu'une personne valide un formulaire BreezingForms, qu'elle reçoive en retour un fichier en pièce jointe.

Comment puis-je mettre ça en œuvre ?

Niveau : Facile
Version BF minimale requise : BreezingForms Lite

Situation.

Vous souhaitez envoyer, à vos visiteurs, un fichier lors de la validation d'un formulaire précis.

Solution.

Il est bien sûr possible de joindre un fichier à l'email de retour que l'initiateur d'un formulaire recevra après avoir validé ce dernier.

L'envoi d'un fichier nécessite toutefois le renseignement, dans le formulaire, du chemin SERVEUR complet vers le fichier en question. Il faut donc s'assurer que le fichier ait été rendu disponible dans un répertoire de votre site. Pour l'exemple, je prendrai une petite image de Joomla!, disponible lors de toute installation du CMS.

Pour en relever le chemin complet du fichier, nous allons faire un tout petit peu de gymnastique et jongler vers la configuration de notre Joomla!.

Rendez-vous donc dans cette configuration en cliquant le lien Système → configuration, onglet Système.
Le premier élément disponible est le chemin vers le dossier logs.

FichierUtilisateur 01

Sélectionnez la partie avant le mot administrator, slash compris et copiez cette partie dans le presse-papier. Collez-la éventuellement dans un bloc-notes ou autre fichier texte.

Il faut ensuite relever le répertoire où se trouve le fichier à joindre. Pour cet exemple, nous irons au plus simple, une image nommée joomla_black.png dans le répertoire images. Relevez donc ces informations et allez les ajouter au chemin serveur de votre installation. Rendez-vous sur votre bloc-note ou là ou vous aviez collé ce chemin et ajoutez-y images/joomla_black.png.
Sélectionnez le lien complet et copiez-le dans le presse-papier.

Rendez-vous dans votre formulaire et veillez à ce qu'un champs, qui devra être renseigné par l'utilisateur en renseignant son adresse email, soit présent, nommé p.ex. email avec le label que vous préférerez.

Sélectionnez ce champs et passez dans ses propriétés avancées. Cochez la case Réponse afin que l'utilisateur reçoive l'email de confirmation et dans le champ Fichier de retour par email, collez le lien complet vers le fichier.

FichierUtilisateur 02 tn

Validez les changements par le bouton Enregistrer les propriétés puis enregistrez votre formulaire à l'aide du bouton Sauver de la barre d'outils haute.

Testez votre formulaire en renseignant votre propre adresse email comme si vous étiez un utilisateur et validez. Vérifier votre boîte mail afin de vérifier le fonctionnement de votre formulaire.

Exemple simple ci-dessous.

Ce formulaire n'étant pas connecté à notre base de données, votre nom et email ne sont traités que pour l'envoi d'un message de test. Il n'enregistre aucune donnée personnelle, il n'est présenté qu'à titre d'information et de test.

Petite piqûre de rappel :
N'oubliez jamais d'enregistrer les propriétés de vos champs après toutes modifications afin que ces dernières ne soient pas perdues lors du passage vers un autre élément.

Inspiré de : https://crosstec.org/en/support/online-documentation/breezingforms/10-advanced-settings/747-new-send-a-file-to-the-user.html

Cet article vous a plu ?
N'hésitez pas à laisser une évaluation en haut de page afin de me faire part de votre impression !

Commentaires  
chlyroju
0#Attachement fichier à l'emailchlyroju14-12-2020 10:27
Bonjour,
J'ai fait un test avec l'exemple simple ci-dessus.
J'ai bien reçu l'email mais pas de fichier attaché.
J'ai testé sur un de mes sites sans plus de succès.
Si vous pouvez m'aider
Merci par avance
Christian
Eddy
0#RE: Attachement fichier à l'emailEddy14-12-2020 11:07
Bonjour Christian,

Vous pouvez tester le formulaire ci-dessus de nouveau, j'ai réparé une petite mise à jour oubliée. Le répertoire où se trouve le fichier en question avait été modifié et j'avais omis de mettre le chemin à jour dans le formulaire.
C'est désormais chose faite.

Si, depuis votre site, vous ne recevez pas le fichier, c'est probablement que le chemin vers ce dernier est erroné. Il faut renseigner le chemin Serveur et non le chemin http.

Je reste à l'écoute…

Eddy
chlyroju
0#RE: Envoi d'un fichier à l'utilisateur après remplissage d'un formulaire BreezingFormschlyroju14-12-2020 14:00
Re,
Dans mon formulaire, dans l'élément Adresse email ayant pour nom email, dans l'onglet avancé, j'ai mis /home/images/commande-kimsufi.pdf dans le champ Fichier de retour par email.
Le pdf est dans son dossier et il est accessible : https://www.gcsites.fr/images/commande-kimsufi.pdf
J'ai utilisé le formulaire de contact https://www.gcsites.fr/contact.html
Les champs Réponse et Réponse comme envoyeur sont cochés.
Mais pas de fichier joint à l'email!
Christian
Eddy
0#RE: Envoi d'un fichier à l'utilisateur après remplissage d'un formulaire BreezingFormsEddy14-12-2020 17:03
Re:

Je serais très surpris que le chemin serveur racine de votre site soit seulement "home". Vous êtes chez OVH, si le site est placé dans le répertoire par défaut, il s'agirait du répertoire www si mes souvenirs sont bons.

Comme je le précise dans le tutoriel, le chemin serveur peut être copié depuis la configuration de votre site Joomla! depuis l'onglet "Système". Relever la totalité de ce qui se trouve devant "administrator" du paramètre "Dossier "Log". Il est également disponible depuis l'onglet "Serveur", paramètre "Dossier temporaire", copier toute la partie qui se trouveavant "tmp". C'est le chemin serveur complet vers votre site et c'est à placer devant votre dossier image dans le chemin vers le fichier.

Il est encore possible de récupérer le chemin serveur en créant un fichier nommé info.php qui contient ce code :



Chargez ce fichier à la racine de votre site et appelez-le (www.gcsite.fr/info.php), il vous donnera votre information. Si vous utilisez cette méthode, supprimez IMPÉRATIVEMENT le fichier après avoir récupéré le chemin serveur.

Cordialement,
Eddy
chlyroju
0#RE: Envoi d'un fichier à l'utilisateur après remplissage d'un formulaire BreezingFormschlyroju14-12-2020 18:10
Oups,
J'ai copié bêtement /home/ sans me soucier de ce qui suivait !.
Ça fonctionne !
Encore Merci pour votre aide
Christian
chlyroju
0#RE: Envoi d'un fichier à l'utilisateur après remplissage d'un formulaire BreezingFormschlyroju14-12-2020 18:18
J'ai une autre question :
Est-il possible de générer un pdf avec le contenu de l'email reçu par l'utilisateur ?
Par exemple l'image ci-dessous qui correspond à l'email reçu pour lequel je voudrais joindre un pdf identique à l'email reçu:

Merci par avance
Christian
Eddy
0#RE: Envoi d'un fichier à l'utilisateur après remplissage d'un formulaire BreezingFormsEddy14-12-2020 19:32
Bonsoir Christian,

Votre image ne peut être affichée dans les commentaires, elle est refusée par ma "politique de confidentialité (CSP)". C'est probablement mieux ainsi car elle contient des donnnées sensibles (si elles sont réelles). Toutefois, elle m'a été transmise par ma notification e-Mail.

Il est en effet possible de générer une pièce jointe au format *pdf. Ouvrez l'édition de votre formulaire. Dans la partie droite, cliquez "Avancé" puis "Plus d'options".
Dans les onglets "Emails administrateur" et "Courriels de retour", sélectionnez le format PDF dans la liste déroulante nommée "Pièce jointe". Cela joindra un fichier pdf au mail concerné (admin et/ou utilisateur), contenant les informations saisies dans le formulaire en plus des en-têtes.

Cependant, il se peut qu'il soit difficile de formater le fichier comme le montre votre image. BreezingForms utilise la bibliothèque TCPDF qui semble limiter les possibilités de modifications. Le traitement des fichiers joints de BreezingForms m'est encore un peu méconnu.

Je vous invite tout de même à jeter un œil sur cet article (en anglais) chez Crosstec, peut-être vous aidera-t-il à produire un fichier qui puisse correspondre à votre besoin?

Je vous souhaite une excellente soirée.

Cordialement,
Eddy

Les commentaires sont réservés aux membres enregistrés. Si vous êtes membre, veuillez vous connecter sinon, n'hésitez pas à vous enregistrer !

Considérez un don!

Vous avez trouvé des réponses à vos questions, les tutoriels disponibles vous ont aidé à monter votre formulaire et vous souhaitez m'être reconnaissant pour le contenu attractif de ces pages ?

paypal btn

Via PayPal ou Stripe.

Vos dons m'aident à maintenir le site et à vous proposer encore plus de tutoriels pour vous aider encore d'avantage.

x