BreezingForms : calcul de bouton radio et cases a cocher

Réduire
X
 
  • Filtrer
  • Heure
  • Afficher
Tout effacer
nouveaux messages

  • [RÉGLÉ] BreezingForms : calcul de bouton radio et cases a cocher

    Salut

    Avec BreezingForms Free (build 938) je fait un formulaire d’adhésion en ligne pour une association. Ce formulaire est sur plusieurs pages et je voudrais mettre en place des calculs automatique. Pour m'aider a mettre en place ces calculs automatiques j'ai suivis le tuto Calcul de champs de texte et de listes dans un formulaire de eddy-vh.

    Mais j'ai deux questions :

    1)
    Dans la page 07 il y a trois champs : Montant adhésion, Total activités et Total à payer.

    Dans la page 06 il y a la liste des activités (groupe de champs a cocher) et pour certaines il y a un montant à payer (différent suivant les animations), en plus de l’adhésion, et pour d'autres c'est gratuit.

    Comment je fait pour additionner le total et le faire apparaître dans le champ Total des activités de la page 07?

    2)
    Dans la page 04 avec un groupe de bouton radio pour choisir le type d’adhésion :

    0;Adulte;10
    0;Enfant;5

    Je voudrais faire apparaître ce dans le champ Montant adhésion (de la page 07). Je me suis dit que la seconde valeur serait mis dans le champ Montant adhésion. Mais non.

    J’espère que mes explications sont clairs .

  • #2
    Hello,

    Calculer la somme des cases cochées d'un groupe de case à cocher, ok, c'est réalisable.

    Pour les boutons radio, la formule est identique à celle des listes de sélection.
    Dans les propriétés avancées du groupe de boutons radio, cocher personnalisé dans la zone "Script d'action", cocher "Clic" et entrez le script suivant :
    Code:
    ff_getElementByName('radio_value').value = element.value;
    "radio_value étant le nom du champ récepteur de la valeur.

    Reprenons :
    1. Il y a un seul groupe de boutons radio avec des activités dont certaines sont payantes d'autres non.
    2. Il y a un champ qui récupère la somme des valeurs des cases cochées.
    3. Il y a un groupe de boutons radio avec deux options.
    4. Il y a un champ qui récupère la valeur du choix de ce groupe de boutons radio
    5. Il y a un champs où l'on calcule la somme totale.
    On est d'accord ?

    Si c'est bien ça, je fais quelques essais et reviendrai vers toi avec un exemple concret.


    Cordialement.
    __
    Eddy !!!
    Tutoriels BreezingForms en Français : https://www.breezingforms.eddy-vh.com/

    Commentaire


    • #3
      Re

      Pour les point 1 à 5 on est d'accord.

      Commentaire


      • #4
        Tu veux que je t’envoie le formulaire que j'ai fait pour tes tests ?

        Commentaire


        • #5
          Ok, laisse-moi un peu de temps, je vois ça le plus vite possible.
          Je vais préparer un petit formulaire avec le minimum nécessaire.
          3 pages qui pourraient correspondre à tes 4, 6, 7 susmentionnées.
          1. Un groupe de 2 boutons radio avec leur valeur, le montant étant envoyé dans le champ Montant adhésion
          2. Un groupe de cases à cocher avec des activités, le montant étant envoyé dans le champ Montant activités
          3. Les trois champs - Montant adhésion, Montant activités, Total à payer qui prendra la somme des valeurs des deux précédents.
          Lorsque je te filerai le xml, tu pourras l'installer et t'en inspirer pour ton formulaire.
          Je te donnerai un maximum d'explications.

          Cordialement.
          __
          Eddy !!!
          Tutoriels BreezingForms en Français : https://www.breezingforms.eddy-vh.com/

          Commentaire


          • #6
            Re:

            Voici le petit formulaire en pièce jointe.
            Pour l'installer, dézippe le fichier et suis ces instructions (section Comment installer un package).


            Détail :
            Les champs adhesion, activites et total contiennent un script d'action.
            Seuls les deux premiers ont une action associée (le clic) le troisième n'en a pas, il est lancé avec l'action des deux premiers, c'est précisé en commentaire dans les scripts.
            1. Le script du champ adhesion envoie la valeur sélectionnée dans le champs mtnt_adhesion et joue le script du champ total.
            2. Le script du champ activites envoie la somme des valeurs de toutes les options cochées vers le champ mtnt_activites et joue le script du champ total.
            3. Le script du champ total lancé à chaque modification d'une des options précédentes calcule la somme des champs mtnt_adhesion et mtnt_activites.
            Il reste à étudier le tout et t'en inspirer pour ton formulaire.
            Fichiers joints
            schtroumph aime ceci.
            Cordialement.
            __
            Eddy !!!
            Tutoriels BreezingForms en Français : https://www.breezingforms.eddy-vh.com/

            Commentaire


            • #7
              Déjà ! j'ai commencé à regarder. Tu dit que dans les champs Adhésion et Activités tu a mis l'action clic. Hors pour Adhesion tu a coché Modifier.

              Commentaire


              • #8
                Exact, petite erreur de frappe, je suis au bureau et écris rapidement entre deux "missions".
                Cordialement.
                __
                Eddy !!!
                Tutoriels BreezingForms en Français : https://www.breezingforms.eddy-vh.com/

                Commentaire


                • #9
                  Pour les activités ça marche, ça me calcule bien le total. Mais pour le type d’adhésion le champ Montant de l’adhésion reste vide. Je n'arrive pas à trouver le probléme. Je me suis fait un formulaire avec juste les champs dont j'ai besoin pour personnaliser (c'est exactement le même que 'l'officiel", j'ai simplement supprimé ce dont je n'avais pas besoin). Tu veux que je te l'envoie ou je te met ici les infos ?

                  Commentaire


                  • #10
                    Place ici le script que tu as pour ce champ.
                    Cordialement.
                    __
                    Eddy !!!
                    Tutoriels BreezingForms en Français : https://www.breezingforms.eddy-vh.com/

                    Commentaire


                    • #11
                      function ff_AdhesionType_action(element, action)
                      {
                      switch (action) {
                      case 'change':
                      ff_getElementByName('MontantAdhesion').value = jQuery('[name="ff_nm_AdhesionType[]"]:checked').val();

                      ff_total_action(element, action);
                      // au clic on lance également le script du champ Total

                      break;
                      default:;
                      } // switch
                      } // ff_AdhesionType_action
                      Le champ avec les deux valeurs se nomme AdhesionType et celui où est envoyé la valeur MontantAdhesion.

                      Commentaire


                      • #12
                        Pour montrer le formulaire à la personne avec qui je gère le site, je viens de mettre le formulaire dans une installation du site destiné aux tests (voir le formulaire). Et je me suis rendu compte que les champs anti spam (la triple protection que tu parle sur ton site) étaient visible et que je ne peux pas utiliser le formulaire (ça le fait aussi sur le site en local). Et ça c'est depuis l'insertion des code pour le calcul. Coïncidence ou est-ce qu'il y a un rapport ? dans ton article tu dit avoir des dysfonctionnement mais sans avoir trouvé la cause. Est-ce ça ? pour voir si ça pouvait venir des scripts je les ai tous supprimer. Mais c'est pareil (du coup je les ai tous remis).
                        Dernière édition par schtroumph à 16/10/2020, 09h30

                        Commentaire


                        • #13
                          C'est possible, le test de durée est assez étrange.

                          Ton script sur AdhesionType semble correct mais retourne une erreur. Il se peut que ce soit le test de durée qui en soit la cause.
                          Essaye de le supprimer pour voir.
                          Cordialement.
                          __
                          Eddy !!!
                          Tutoriels BreezingForms en Français : https://www.breezingforms.eddy-vh.com/

                          Commentaire


                          • #14
                            C'est pareil. J'ai même supprimer les champs et scripts de la triple protection, mais le probleme reste.

                            Commentaire


                            • #15
                              Il doit te manquer un ";" quelque part, peux-tu exporter le formulaire et me le mette à disposition ?
                              Cordialement.
                              __
                              Eddy !!!
                              Tutoriels BreezingForms en Français : https://www.breezingforms.eddy-vh.com/

                              Commentaire

                              Annonce

                              Réduire
                              1 sur 2 < >

                              C'est [Réglé] et on n'en parle plus ?

                              A quoi ça sert ?
                              La mention [Réglé] permet aux visiteurs d'identifier rapidement les messages qui ont trouvé une solution.

                              Merci donc d'utiliser cette fonctionnalité afin de faciliter la navigation et la recherche d'informations de tous sur le forum.

                              Si vous deviez oublier de porter cette mention, nous nous permettrons de le faire à votre place... mais seulement une fois
                              Comment ajouter la mention [Réglé] à votre discussion ?
                              1 - Aller sur votre discussion et éditer votre premier message :


                              2 - Cliquer sur la liste déroulante Préfixe.

                              3 - Choisir le préfixe [Réglé].


                              4 - Et voilà… votre discussion est désormais identifiée comme réglée.

                              2 sur 2 < >

                              Assistance au forum - Outil de publication d'infos de votre site

                              Compatibilité: PHP 4.1,PHP4, 5, 6DEV MySQL 3.2 - 5.5 MySQLi from 4.1 ( @ >=PHP 4.4.9)

                              Support Version de Joomla! : | J!3.0 | J!2.5.xx | J!1.7.xx | J!1.6.xx | J1.5.xx | J!1.0.xx |

                              Version française (FR) D'autres versions sont disponibles depuis la version originale de FPA

                              UTILISER À VOS PROPRES RISQUES :
                              L'exactitude et l'exhaustivité de ce script ainsi que la documentation ne sont pas garanties et aucune responsabilité ne sera acceptée pour tout dommage, questions ou confusion provoquée par l'utilisation de ce script.

                              Problèmes connus :
                              FPA n'est actuellement pas compatible avec des sites Joomla qui ont eu leur fichier configuration.php déplacé en dehors du répertoire public_html.

                              Installation :

                              1. Téléchargez l'archive souhaitée : http://afuj.github.io/FPA/

                              Archive zip : https://github.com/AFUJ/FPA/zipball/master

                              2. Décompressez le fichier de package téléchargé sur votre propre ordinateur (à l'aide de WinZip ou d'un outil de décompression natif).

                              3. Lisez le fichier LISEZMOI inclus pour toutes les notes de versions spécifiques.

                              4. LIRE le fichier de documentation inclus pour obtenir des instructions d'utilisation détaillées.

                              5. Téléchargez le script fpa-fr.php à la racine de votre site Joomla!. C'est l'endroit que vous avez installé Joomla et ce n'est pas la racine principale de votre serveur. Voir les exemples ci-dessous.

                              6. Exécutez le script via votre navigateur en tapant: http:// www. votresite .com/ fpa-fr.php
                              et remplacer www. votresite .com par votre nom de domaine


                              Exemples:
                              Joomla! est installé dans votre répertoire web et vous avez installé la version française du fichier FPA:
                              Télécharger le script fpa-fr.php dans: /public_html/
                              Pour executer le script: http://www..com/fpa-fr.php

                              Joomla! est installé dans un sous-répertoire nommé "cms" et vous avez installé la version française du fichier FPA:
                              Télécharger le script fpa-fr.php dans: /public_html/cms/
                              Pour executer le script: http://www..com/cms/fpa-fr.php

                              En raison de la nature très sensible de l'information affichée par le script FPA, il doit être retiré immédiatement du serveur après son utilisation.

                              Pour supprimer le script de votre site, utilisez le lien de script de suppression fourni en haut de la page du script. Si le lien de suppression échoue pour supprimer le script, utilisez votre programme FTP pour le supprimer manuellement ou changer le nom une fois que le script a généré les données du site et le message publié sur le forum. Si le script est toujours présent sur le site, il peut être utilisé pour recueillir suffisamment d'informations pour pirater votre site. Le retrait du script empêche des étrangers de l'utiliser pour jeter un oeil à la façon dont votre site est structuré et de détecter les défauts qui peuvent être utilisé à vos dépends.
                              Voir plus
                              Voir moins

                              Partenaire de l'association

                              Réduire

                              Hébergeur Web PlanetHoster
                              Travaille ...
                              X