SPIP-Contrib

SPIP-Contrib

عربي | Deutsch | English | Español | français | italiano | Nederlands

290 Plugins, 198 contribs sur SPIP-Zone, 71 visiteurs en ce moment

Accueil > Interactivité, échanges > Formulaires > Formidable > Formidable, le générateur de formulaires

Formidable, le générateur de formulaires

23 janvier 2012 – par RastaPopoulos – 2506 commentaires

179 votes

Un générateur de formulaires facilement configurable pour les non-informaticiens et facilement extensible pour les développeurs.

Introduction

L’objectif était de créer un plugin permettant de générer des formulaires. Historiquement, 2 plugins avaient déjà été développés précédemment pour remplir cette fonction :

  • Forms &Tables, qui n’a pas été complètement porté pour SPIP 2.
  • et spip-formulaire créé par artego mais qui n’est plus maintenu.

La question s’est donc posée : construire sur la base d’un des deux plugins ou repartir de zéro ?
Form &Table, très complet pour les utilisateurs, présentait l’inconvénient d’avoir un côté « fourre-tout » qui le rendait difficilement modifiable et difficile à personnaliser par les développeurs.

Il a finalement été décidé de repartir de zéro pour proposer quelque chose :

  • de plus facile à utiliser pour les utilisateurs d’une part,
  • mais aussi de plus facile à personnaliser pour les développeurs.
    Avec le parti pris de se baser de préférence sur plusieurs petits plugins spécialisés et de tirer parti de la nouvelle norme CVT.

Installation

Le plugin nécessite les plugins suivants :

Il faut installer le plugin jQuery UI pour pouvoir déplacer les champs à la souris pendant la création d’un formulaire.

Interface utilisateur

L’utilisation basique de l’interface est abordée dans ce screencast : Mon premier formulaire pas à pas : c’est Formidable !

Appeler mon formulaire

Vous devez appeler le formulaire ayant le nom « formidable », en lui passant en paramètre l’identifiant de votre formulaire.

Dans un contenu
Utilisez le modèle <formulaire> classique : <formulaire|formidable|id=34> ou bien <formulaire|formidable|id=contact>

Dans un squelette
#FORMULAIRE_FORMIDABLE{34} ou bien #FORMULAIRE_FORMIDABLE{contact}

Afficher les résultats du formulaire

Dans un contenu
Utilisez le modèle <formulaire_analyse|id_formulaire=34>

Pré-remplir dynamiquement les champs d’un formulaire depuis un squelette

À noter que dans un squelette, vous avez la possibilité de surcharger dans l’appel, les valeurs par défaut des champs de votre formulaire. Pour cela, vous devez passer un tableau de nom=>valeur en deuxième paramètre. Vous pourrez trouver les noms de vos champs dans l’aide-mémoire situé sur la page de configuration des traitements.

Le tableau en deuxième paramètre :

  1. #FORMULAIRE_FORMIDABLE{contact, #ARRAY{nom_du_champ, Ma valeur}}

C’est particulièrement utile pour remplir un champ caché avec une valeur dynamique venant du squelette :

  1. #FORMULAIRE_FORMIDABLE{contact, #ARRAY{hidden_1, #ID_DOCUMENT}}

Pré remplir les champs depuis une ancienne réponse

Si les réponses sont enregistrées, on peut passer en troisième argument un identifiant de réponse.

  1. #FORMULAIRE_FORMIDABLE{contact,'',23}

pour modifier la réponse 23.

Champs oui-non et case unique

Pour rendre obligatoire la réponse « oui » à un champ de type oui-non ou case unique (pour la validation de conditions d’utilisation par exemple), il faut simplement rendre le champ obligatoire.

Courriels de notification

Une option des traitements proposés permet d’envoyer un mail de notification automatiquement, à chaque saisie d’un formulaire.

Le squelette par défaut employé pour la mise en forme de ces mails est plugins/formidable/notifications/formulaire_email.html. Vous pouvez le copier dans le répertoire ’notifications’ de votre squelette et l’y modifier à votre guise. Cette modification vaudra pour tous les formulaires.

Pour utiliser un squelette spécifique pour les mails de notification de l’un seulement des formulaires définis avec Formidable, il suffit d’ajouter son squelette dans le répertoire ’notifications’ de votre dossier squelettes, mais en ajoutant l’identifiant.

IDENTIFIANT étant l’identifiant du formulaire défini dans Formidable, les squelettes doivent se nommer :
formulaire_IDENTIFIANT_email.html pour le mail aux destinataires
formulaire_IDENTIFIANT_accuse.html pour l’accusé de réception du visiteur

Conservation des IP

Les adresse IP des personnes répondant aux formulaires sont stockées en base de donnée. Depuis la version 1.5 (SPIP 3) / 0.7 (SPIP < 3), elle sont automatiquement hashé, de manière à ce que l’IP ne soit plus reconnaissable, au bout de 124 jours (environ 4 mois).

Pour changer ce délai, vous pouvez redéfinir la constante _CNIL_PERIODE dans votre fichier mes_options.php.

Par exemple :

  1. define('_CNIL_PERIODE', 24*3600);

permet de hasher les IP toutes les 24 heures.

Si vous voulez désactiver le hashage, mettez la valeur à 0.

Envoi de fichiers

Lire l’article complémentaire : Envoyer des fichiers avec un formulaire Formidable.

Voir aussi sur le wiki

-  Complément de doc et exemples sur les boucles et balises de formidable
-  Exemples de stylage CSS d’un formulaire Formidable
-  todoFormidable
-  Formidable, présentation aux Grottes (2010)

Voir en ligne : http://plugins.spip.net/formidable

Dernière modification de cette page le 2 octobre 2018

Retour en haut de la page

Tout afficher

Vos commentaires

  • Le 9 octobre à 23:22, par Manu En réponse à : Formidable, le générateur de formulaires

    Bug ou feature ?
    J’ai un champ « liste déroulante » qui propose une série d’options valeur|libellé
    Après sélection puis validation, c’est bien « valeur » qui est inscrit dans la base de donnée, OK.
    Le truc, c’est que les mails de confirmation/accusé de réception, la visualisation des réponses dans l’espace privé ou l’export CSV affichent « libellé » et non pas « valeur ».
    Bug ou feature ? (dans le cas qui me concerne, c’est très gênant...)

    • Le 10 octobre à 09:20, par Maïeul En réponse à : Formidable, le générateur de formulaires

      c’est une feature pour ce qui concerne l’affichage dans l’espace privé et les emails.

      pour l’export csv... cela de discute. On pourrait mettre une option.

    • Le 10 octobre à 09:31, par RastaPopoulos En réponse à : Formidable, le générateur de formulaires

      L’export des réponses est déjà un formulaire (et non un simple bouton ou lien d’action), donc oui je pense qu’au fur et à mesure, il faudrait rajouter des options.

      Cela dit, pour du CSV (donc du traitement), ça devrait effectivement par défaut être la valeur brute, m’est-avis…

    • Le 10 octobre à 10:48, par Manu En réponse à : Formidable, le générateur de formulaires

      Merci de ta réponse.
      Pour l’affichage et les emails : je suis d’accord, ça se tient parce que c’est ce qu’a choisi l’internaute.
      Pour le CSV, là je trouve ça vraiment problématique. En l’occurrence, j’ai une série de « dates » (enfin, des chaines de texte) du style
      2018-11-17|17 novembre
      2018-12-02|2 décembre etc...
      tel qu’il est, l’export csv est inexploitable dans un tableur pour trier les réponses par date.
      Je sens que mon client ne va pas m’adorer sur ce coup-là.
      => comment faudrait-il faire pour avoir la valeur du champ dans le csv ?

      PS : quand on rédige les options en mettant des « / »
      2018/11/17|17 novembre
      2018/12/02|2 décembre etc...
      alors, dans les mails on obtient « sans réponse ».... gloups

    • Le 10 octobre à 11:06, par Maïeul En réponse à : Formidable, le générateur de formulaires

      pour les dates ca se tient. Mais pour d’autres cas, pas forcément.
      Donc je serais plutot d’avis de proposer cela comme option, sous forme de bouton radio qui choisi, et avec comme valeur par défaut « brut ».

      Pour le /, je pense que c’est lié au fait que dans la terminologie SPIP, le / marque souvent des sous entrée de tableau.

    • Le 10 octobre à 11:20, par Manu En réponse à : Formidable, le générateur de formulaires

      Pour le bouton et la valeur brute, ce serait vraiment chouette de pouvoir avoir cette possibilité. C’est compliqué à faire ???

    • Le 10 octobre à 11:20, par Maïeul En réponse à : Formidable, le générateur de formulaires

      a priori non, mais faut avoir le tps.

    • Le 10 octobre à 11:37, par Manu En réponse à : Formidable, le générateur de formulaires

      Alors.... aïe, ouille, je pose ou je pose pas la question ?
       ;-))
      (Ah, mon dieu, dans une deuxième vie, faut vraiment que j’aie de meilleures bases de programmation)

    • Le 10 octobre à 11:40, par Maïeul En réponse à : Formidable, le générateur de formulaires

      la réponse est : j’en sais rien.

    • Le 11 octobre à 18:42, par Maïeul En réponse à : Formidable, le générateur de formulaires

      la dernière version de formidable 3.21.0 permet de choisir la forme brute ou la forme humaine lors de l’export. Par défaut, la forme brute.

    • Le 11 octobre à 21:25, par Manu En réponse à : Formidable, le générateur de formulaires

      Merci mille fois Maïeul
       ;-))))

    Répondre à ce message

  • Le 9 octobre à 01:27, par DD En réponse à : Formidable, le générateur de formulaires

    Je viens de voir qu’il y avait la possibilité d’ajouter un champ « Inscription aux listes ».
    Ca m’intéresse beaucoup pour éviter d’avoir 2 formulaires à faire remplir sur la même page (1 formulaire avec tous les champs voulus + 1 pour l’inscription à une newsletter).

    Mais je ne vois pas trop comment brancher ça sur les inscriptions.

    Est-ce que l’utilisateur qui indique son adresse mail dans un champ email du formulaire (champ à définir ?) peut être ainsi inscrit à une liste de diffusion listée dans les options du champ « Inscription aux listes » ?
    Et dans ce cas il n’y a pas de double opt-in ?

    Il n’y a pas mention des listes de diffusion dans l’email reçu par l"administrateur même si une liste est indiquée par défaut dans les paramètres du champ.

    Merci

    • Le 9 octobre à 10:28, par Maïeul En réponse à : Formidable, le générateur de formulaires

      Ce n’est pas natif à Formidable, mais plutot une fonction du plugin mailsubscriber. Je conseillerai de demander de l’aide dans le forum dudit plugin.

    Répondre à ce message

  • Le 27 septembre à 15:55, par jiji En réponse à : Formidable, le générateur de formulaires

    Bonjour

    J’utilise le plugin Formidable dans sa dernière version.
    J’émet un formulaire sur mon site qui en renvoie les résultats à plusieurs personnes authentifiées par leur adresse mail au niveau du traitement du formulaire.
    Je peux faire cet envoi sur 4 adresses mail mais il n’y a pas la possibilité d’en inclure une 5e et c’est ce que je voudrais arriver à faire !
    Pouvez vous me dire si c’est possible ? Et comment le faire car je ne touche pas aux squelettes !

    Merci de votre réponse.

    • Le 27 septembre à 16:24, par Maïeul En réponse à : Formidable, le générateur de formulaires

      le nombre de destinataire est illimitée. Je ne comprend pas le problème. Normalement tu sépare tes destinataires par une virgule, et c’est bon.

    • Le 1er octobre à 17:03, par jiji En réponse à : Formidable, le générateur de formulaires

      Merci de votre réponse.
      Je ne sais pour quelle raison, je n’arrivais pas à inscrire une 5e adresse !
      Enfin j’ai réessayé aujourd’hui et effectivement cela fonctionne !
      Donc plus de problème !
      Jiji

    Répondre à ce message

  • Le 21 septembre à 10:41, par seb En réponse à : Formidable, le générateur de formulaires

    Bonjour,

    ou puis-je récupérer les anciennes version ?
    Je souhaiterais récupérer la version antérieure, car celle ci me plante un site après la mise à jour (erreur php).

    Merci

    • Le 21 septembre à 10:52, par RastaPopoulos En réponse à : Formidable, le générateur de formulaires

      Ben ça dépend de quelle version tu parles. Si c’est une version bien précise sur la même branche que pour SPIP 3, il faut le récupérer par SVN en indiquant jusqu’à quelle révision. Ou bien sur le Trac, il y a un truc pour télécharger à tel moment une fois qu’on est sur une révision (je ne sais plus l’astuce de tête mais il y a un paramètre pour ça).

      Sinon ya bien les ZIP de toutes les branches qui sont générées, donc y compris la branche 2 qui était aussi pour SPIP 3 :
      https://plugins.spip.net/formidable

    • Le 21 septembre à 11:08, par seb En réponse à : Formidable, le générateur de formulaires

      Merci pour ta réponse.

      En effet j’aurais souhaité récupérer sur la même branche une version antérieure.
      La 3.15.0.

      Je viens à l’instant de la trouver dans un backup.

    • Le 21 septembre à 11:32, par Maïeul En réponse à : Formidable, le générateur de formulaires

      par contre il serait bon de préciser ce qui te plante, comment, pourquoi, quelle version de PHP, etc.

      Sinon d’autres auront le même problème...

    Répondre à ce message

  • Le 13 septembre à 09:04, par inaden En réponse à : Formidable, le générateur de formulaires

    Bonjour

    Il y avait (avant) une case à cocher permettant de proposer à l’internaute de recevoir une copie du formulaire (ce qui est, je crois, pas mal utile pour archivage et suivi de ses démarches). Mais je ne trouve plus cette possibilité.
    Existe-t-elle encore ?
    Et si oui, comment l’activer ?

    Merci d’avance pour votre aide.
    Denis

    Répondre à ce message

  • Le 4 avril 2017 à 12:55, par 1138 En réponse à : Formidable, le générateur de formulaires

    Bonjour, les spipeur⋅se⋅s !

    Par défaut, les champs Explication ne sont pas envoyés par e-mail. Or, j’aimerais pouvoir activer cette possibilité pour certains de ces champs.

    Y a-t-il un moyen de faire ça ? Ou avez-vous une astuce à me proposer ?

    Merci d’avance. :-)

    • Le 4 avril 2017 à 13:15, par Maïeul En réponse à : Formidable, le générateur de formulaires

      Pour le moment c’est écrit en dur. On pourrait ajouter une option pour certains champs…

    • Le 5 septembre à 16:26, par 1138 En réponse à : Formidable, le générateur de formulaires

      Bonjour.

      Suite à une demande d’une collègue, je remonte la question.

      Je vois que la révision 105815, d’aout 2017, permet désormais d’exclure certains champs de l’envoi. Ne pourrait-on pas se baser là-dessus, quitte à ajouter une case précochée « Exclure tous les champs Explication », histoire de ne pas casser le fonctionnement préexistant ?

      Qu’en pensez-vous ?

    Répondre à ce message

  • Le 2 septembre à 19:19, par Patt En réponse à : Formidable, le générateur de formulaires

    Bonjour,
    je voudrais bien modifier la mise en page du formulaire dans le site public mais je ne sais pas quel fichier surcharger.
    Merci pour votre aide

    • Le 2 septembre à 20:21, par RastaPopoulos En réponse à : Formidable, le générateur de formulaires

      Comme n’importe quoi d’autres dans ton site, ça n’a pas de spécificité avec ce plugin, qui ne s’occupe absolument pas de graphisme.

      Ça dépend de ton squelette/thème, celui fournit de base ou un autre (et dans ce cas demander à son auteur). Pour la dist de SPIP, on peut avoir un fichier « perso.css » et s’il est présent c’est pris en compte pour ajouter ses règles après les autres à priori.

    Répondre à ce message

  • Le 28 août à 23:53, par Luc En réponse à : Formidable, le générateur de formulaires

    Bonjour à tous, et merci pour ce plugin tellement utile, et que j’utilise tellement :)

    J’ai un cas de figure où j’ai besoin de mettre à jour régulièrement la liste déroulante d’une question (de nouveaux items viennent s’ajouter et les plus vieux doivent disparaître). Pour les nouveaux items aucun problème, mais pour ceux que je dois retirer de la liste, le problème qui survient et que quand je souhaite exporter les réponses, celles qui comportent les choix à présent disparu n’ont plus de valeur « textuelle » pour cette question, uniquement la clef. Y a-t-il un moyen de contourner cela ?
    Merci d’avance.

    • Le 29 août à 10:04, par RastaPopoulos En réponse à : Formidable, le générateur de formulaires

      Non je ne vois pas trop comment. Si tu les supprimes, ça ne fait plus partie de la config, et dans la base de données, pour les anciennes réponses, c’est la clé technique qui est gardée en mémoire dans la table forcément.

    • Le 29 août à 10:25, par Luc En réponse à : Formidable, le générateur de formulaires

      C’est bien ce que je me disais, dommage, mais merci pour le retour rapide. Il serait imaginable de créer une nouvelle « saisie » qui bouclerait sur une table de référence ?

    • Le 29 août à 10:41, par Maïeul En réponse à : Formidable, le générateur de formulaires

      @Rastpopoulos : on pourrait imaginer une syntaxe pour avoir une équivalence clé/humain conservé mais non affiché. Ou bien un sous paramètre de saisie

    • Le 30 août à 10:08, par Luc En réponse à : Formidable, le générateur de formulaires

      C’est vrai que si on pouvait ajouter un caractère qui serait interprété comme une exclusion dans la requête, ça serait top. Je creuserai la chose, car la nécessité est bien présente en ce qui me concerne. Encore merci.

    Répondre à ce message

  • Le 24 août à 19:38, par HirisBen En réponse à : Formidable, le générateur de formulaires

    Bonjour,
    J’ai une question qui va peut-être vous sembler bête, mais je me lance !
    J’ai besoin d’insérer dans un site un formulaire de recherche par sélection du type : je sélectionne un 1er critère dans une liste déroulante A, puis un 2e dans une liste déroulante B et un 3e dans une liste C. Et à la fin je dois obtenir une liste d’articles qui réunissent ces 3 critères. Je n’ai pas trop la notion de comment faire ça. Est-ce que c’est possible d’exploiter la base de cette façon avec Formidable ?
    Et sinon avec quoi est-ce que ça peut se faire ?
    Merci de votre aide et pardon d’avance si je suis hors sujet...

    • Le 24 août à 19:43, par Maïeul En réponse à : Formidable, le générateur de formulaires

      Salut,
      clairement pas. Formidable est un plugin pour des formulaires où l’on poste des données (contacts, inscriptions, etc.), pas pour de la recherche.

      Tes critrèes seraient des mot clefs ? ou autre chose ? Si oui, le plugin critères mots est fait pour toi.
      Dans tous les cas je te conseille de demander de l’aide sur les la liste de discussion des utilisateur·trices de spip.

    • Le 25 août à 10:23, par HirisBen En réponse à : Formidable, le générateur de formulaires

      Bonjour,
      Je te remercie de ta réponse. Mes critères ne sont pas des mots clés mais des données de champs extra que j’ai ajoutés aux articles (lieu ; niveau d’étude par exemple).
      Pour la liste des utilisateurs tu veux parler du forum ?
      Merci en tout cas de ta réactivité :-)

    • Le 25 août à 13:26, par Maïeul En réponse à : Formidable, le générateur de formulaires

      Alors il faudra construire « à la main » ton formulaires qui appellera un squelttes qui te donnera la réponses.

      pour la liste, je pensais à cela http://listes.rezo.net/mailman/listinfo/spip

      mais il y aussi les ofurms.

    Répondre à ce message

  • Le 1er août à 03:19, par beno En réponse à : Formidable, le générateur de formulaires

    Bonjour,

    Il semble qu’il n’y ait pas de Placeholder sur les champs « Date »... serait-il possible d’en rajouter un ? Ce serait bien utile dans certains cas. Merci.

    Répondre à ce message

Répondre à cet article

Qui êtes-vous ?

Pour afficher votre trombine avec votre message, enregistrez-la d’abord sur gravatar.com (gratuit et indolore) et n’oubliez pas d’indiquer votre adresse e-mail ici.

Ajoutez votre commentaire ici Les choses à faire avant de poser une question (Prolégomènes aux rapports de bugs. )
Ajouter un document

Retour en haut de la page

Ça discute par ici

  • Menu animé déroulant

    16 août 2015 – 60 commentaires

    Barre de menu dynamique multi niveaux - adaptation aisée (?) des couleurs et dimensions - convient aussi aux petits écrans (mobiles).

  • Réservations multiples

    4 juillet – commentaires

    Permettre aux utilisateurs d’effectuer de réservations multiples (réserver pour plusieurs personnes à la fois ou réserver un événement plusieurs fois) Dépendances Saisies Réservation d’événements Introduction Il y a deux manières de multiplier les (...)

  • PHANTOM (HTML5UP)

    18 juillet – 32 commentaires

    Squelette SPIP pour intégrer le modèle Phantom de HTML5UP. https://html5up.net/phantom Installation A l’activation, le plugin installe aussi les plugins suivants : crayons, favicon, metasplus+, Couleur d’objet, champs extras, SPIP reset centre (...)

  • SPIPer Ipsum, l’évangile au quotidien

    28 décembre 2009 – 89 commentaires

    Ce plugin permet d’afficher les différentes lectures de l’évangile du jour et le saint du jour selon le calendrier fixé par l’Eglise catholique. Ce service est proposé par le site de L’Evangile au Quotidien dans plusieurs langues. Description Le (...)

  • ciparam : plugin « Configurateur de squelettes »

    29 novembre 2010 – 15 commentaires

    Ce plugin offre un mécanisme de sélection de forme de rubrique ou d’article, un mécanisme de variantes de chartes graphiques, la possibilité de choisir l’ordre de tri des articles dans les rubriques, un mécanisme de paramétrage de la page d’accueil, (...)