Joomla choix multiple comment ça marche ?

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

  • [RÉGLÉ] Joomla choix multiple comment ça marche ?

    Bonjour,

    Je suis en plein développement d'un module pour gérer des contact et j'aimerai avoir de l'aide sur un problème que je rencontre. Donc mon souci est que j'ai un formulaire de type post dans un fichier template et j'aimerais sauvegarder les différents choix de ma liste a choix multiple dans une table au moment de l'envoie, c'est a dire avant qu'il n’accède a une autre vue. Dans un premier temps j'aimerais déjà seulement les afficher mais je n'y arrive pas.

    Voici mon code :

    le formulaire

    Code HTML:
    <select id="items" class="inputbox" multiple="multiple" size="15" name="items[]">
    	<option name="items" id="items" value="1" >item1</option>
    	<option name="items" id="items" value="2" >item2</option>
            <option name="items" id="items" value="3" >item3</option>
            <option name="items" id="items" value="4" >item4</option>
            <option name="items" id="items" value="5" >item5</option>
            <option name="items" id="items" value="6" >item6</option>
    </select>

    le javascript qui s’exécute a l'envoie des donnée
    Code:
    function submitbutton(pressbutton) {
    	var form = document.form;
            //Ce cas ne nous intéresse pas car il s'agit de l'annulation d'envoi
    	if (pressbutton == 'cancel') {
    		submitform( pressbutton );
    		return;
    	}
            //Validation du formulaire
            if (form.nom.value == "") {
                    //Test si le champ nom est rempli (aucune utilité pour mon problème)
                    alert( "<?php echo JText::_( 'nom doit etre defini', true ); ?>" );
    	} else {			
    		var selValue='';
    		for (i=0;i<document.getElementById('items').options.length;i++)
    		{ 
                         if (document.getElementById('items').options[i].selected)
    			{selValue+=document.getElementById('items').options[i].value+";";}
    	        }		
    		alert("selVal");
    		submitform( pressbutton );
    	}
    }
    Pour le moment c'est le javascript qui m'affiche les valeurs, j'aimerais pouvoir faire de même avec du php. J'ai déjà essayer de nombreuses chose mais rien ne marche. La manière dont je m'y suis prise est la suivant, j'avais ajouter un champ php dans la partie else du javascript avec ce code

    Code PHP:
    <?php 
    foreach ($items[] as $value)
        {
            
    $a+=$a+$value+'|';
        }
    ?>
    Puis je faisais un alerte grâce au javascript de ma variable $a : alert(<?php echo $a?>);

    Donc si quelqu'un a une idée pour m'aider a réaliser ceci n'hésitez pas.
    Merci d'avance.
    Dernière édition par haflit21 à 28/06/2011, 14h18

  • #2
    Re : Joomla choix multiple comment ça marche ?

    salut
    je ne comprends pas trop ce que tu veux faire, ou plutot où est ton souci.tu peux récupérer la valeur de ton champ 'items', il suffit de le binder avec Jtable normalement
    Vive Joomla! http://www.joomlack.fr Tutoriels et extensions pour Joomla!. Livre création de template Joomla de plus de 200 pages.
    http://www.template-creator.com Outil de création de templates
    Module Maximenu CK - Megamenu, multicolonnes, chargement de module, description de lien, deroulement animé - Compatible Virtuemart, Hikashop

    Commentaire


    • #3
      Re : Joomla choix multiple comment ça marche ?

      Re,

      Plus précisément, je ne sais pas de quel manière m'y prendre pour enregistrer ces infos dans ma table. En gros, j'ai un template avec une méthode post dans laquelle je récupère des données pour enrichir déjà deux tables; ça fonctionne impeccablement. Je viens d'ajouter un liste a choix multiple sur le modèle que j'ai fourni précédemment.

      J'avais penser que pour sauvegarder chacun des valeurs récupérer dans une table je les stockait dans un tableau puis a l'aide d'un fonction (voir plus bas) que j'ai declarer dans la vue les stocker directement dans la table. Je ne sais pas si c'est réalisable.

      Du coup tu propose que je créer un nouveau document dans le dossier tables pour la tables en question ? Mais ensuite comment stocker ces valeurs ?

      Code:
      function insertinto($val1, $val2)
      	{
      		
      		$db =& JFactory::getDBO();
      		
      		$query = 'INSERT INTO #__test(val1, val2) VALUES ('.$val1.','.$val2.')' ;
      		$db->setQuery ( $query );
      				
      		return true;
      	
      	}

      Commentaire


      • #4
        Re : Joomla choix multiple comment ça marche ?

        Je suis en plein développement d'un module
        alors attends, je te propose de bien poser les choses. tu fais un module ? dans ce cas tu peux récupérer des valeurs de la bdd, mais c'est pas trop fait pour en stocker. Généralement la manipulation de données de la bdd est réservé aux composants, d'où l'utilisation de la classe JTable qui lie les valeurs à la table.

        tu parles aussi de template, donc tu fais un développement directement dans un template ? pas bon ça...
        essaies de poser les premières briques de ce que tu veux faire (d'un point de vue utilisateur)
        Vive Joomla! http://www.joomlack.fr Tutoriels et extensions pour Joomla!. Livre création de template Joomla de plus de 200 pages.
        http://www.template-creator.com Outil de création de templates
        Module Maximenu CK - Megamenu, multicolonnes, chargement de module, description de lien, deroulement animé - Compatible Virtuemart, Hikashop

        Commentaire


        • #5
          Re : Joomla choix multiple comment ça marche ?

          Je te prie de m'excuser car j'ai fait une terrible erreur ce n'est effectivement pas un module mais bien un composant. Encore désolé...

          Commentaire


          • #6
            Re : Joomla choix multiple comment ça marche ?

            ok, c'est plus clair. Alors tu dois suivre le modèle MVC de joomla, regardes par ici:



            et tout de suite ça ira mieux
            Vive Joomla! http://www.joomlack.fr Tutoriels et extensions pour Joomla!. Livre création de template Joomla de plus de 200 pages.
            http://www.template-creator.com Outil de création de templates
            Module Maximenu CK - Megamenu, multicolonnes, chargement de module, description de lien, deroulement animé - Compatible Virtuemart, Hikashop

            Commentaire


            • #7
              Re : Joomla choix multiple comment ça marche ?

              Re,

              Donc voila j'ai longuement étudie les liens que m'a fourni @ced1870 et j'ai maintenant quelque chose qui respecte le modèle MVC. Mais je n'ai toujours pas réussi a réglé mon souci de sélection multiple. Mon problème vient du fait que je n'arrive pas a récupérer les éléments sélectionnés en php. Auriez-vous une solution ?

              Je tente de faire un var_dump($_POST['items']) et sa me retourne null.

              Commentaire


              • #8
                Re : Joomla choix multiple comment ça marche ?

                donc tu as une vue 'default.php' par exemple dans laquelle tu as une balise <form> dans laquelle tu as ton champ <select id="items" ?
                mets vois tes bouts de code ici. Il faut renvoyer le traitement sur ton controlleur qui appelle le modèle
                Vive Joomla! http://www.joomlack.fr Tutoriels et extensions pour Joomla!. Livre création de template Joomla de plus de 200 pages.
                http://www.template-creator.com Outil de création de templates
                Module Maximenu CK - Megamenu, multicolonnes, chargement de module, description de lien, deroulement animé - Compatible Virtuemart, Hikashop

                Commentaire


                • #9
                  Re : Joomla choix multiple comment ça marche ?

                  [modo] pour info j'ai déplacé ton fil dans la section développement du forum[/modo]
                  Vive Joomla! http://www.joomlack.fr Tutoriels et extensions pour Joomla!. Livre création de template Joomla de plus de 200 pages.
                  http://www.template-creator.com Outil de création de templates
                  Module Maximenu CK - Megamenu, multicolonnes, chargement de module, description de lien, deroulement animé - Compatible Virtuemart, Hikashop

                  Commentaire


                  • #10
                    Re : Joomla choix multiple comment ça marche ?

                    Donc dans la 'default.php' je génère la liste grâce a :

                    <?php echo JHTML::_('select.genericlist', $this->item, 'item[]', 'class="inputbox" multiple="multiple" size="15"', 'id', 'nom'); ?>

                    Puis le traitement est envoyé sur le controlleur.php, donc comment récupérer la sélection multiple (au moyen d'un getVar ?)

                    Commentaire


                    • #11
                      Re : Joomla choix multiple comment ça marche ?

                      comment récupérer la sélection multiple
                      attention la liste ne permet qu'une seule sélection. sinon jetes un oeil à ça

                      var_dump($_POST['items'])
                      'item[]'
                      un souci de nom !
                      je pense que ça irait mieux comme ça
                      Code:
                      JHTML::_('select.genericlist', $this->item, 'items',
                      Vive Joomla! http://www.joomlack.fr Tutoriels et extensions pour Joomla!. Livre création de template Joomla de plus de 200 pages.
                      http://www.template-creator.com Outil de création de templates
                      Module Maximenu CK - Megamenu, multicolonnes, chargement de module, description de lien, deroulement animé - Compatible Virtuemart, Hikashop

                      Commentaire


                      • #12
                        Re : Joomla choix multiple comment ça marche ?

                        oublies l'histoire du champ à sélection multiple, je confond avec un paramètre XML

                        EDIT : tu peux poster le code complet de ta vue avec la balise <form> ...
                        Dernière édition par ced1870 à 30/06/2011, 10h24
                        Vive Joomla! http://www.joomlack.fr Tutoriels et extensions pour Joomla!. Livre création de template Joomla de plus de 200 pages.
                        http://www.template-creator.com Outil de création de templates
                        Module Maximenu CK - Megamenu, multicolonnes, chargement de module, description de lien, deroulement animé - Compatible Virtuemart, Hikashop

                        Commentaire


                        • #13
                          Re : Joomla choix multiple comment ça marche ?

                          Re,

                          Je pense que le problème est plus profond que cela, du coup est ce que tu connaitrais des tutos de création de composant vraiment complet (même payant, pas de souci) avec plusieurs controllers, plusieurs vues, des jointures sur plusieurs tables et enregistrement multiple etc.

                          Commentaire


                          • #14
                            Re : Joomla choix multiple comment ça marche ?

                            des tutos en ligne non à part ceux cités, sinon il y a des livres que tu peux acheter.

                            Mais ton souci n'apparait qu'avec une liste de choix multiples ? pour les autres champs ça marche ??
                            Vive Joomla! http://www.joomlack.fr Tutoriels et extensions pour Joomla!. Livre création de template Joomla de plus de 200 pages.
                            http://www.template-creator.com Outil de création de templates
                            Module Maximenu CK - Megamenu, multicolonnes, chargement de module, description de lien, deroulement animé - Compatible Virtuemart, Hikashop

                            Commentaire


                            • #15
                              Re : Joomla choix multiple comment ça marche ?

                              Oui, les autres champs j'arrive à les récupérer. Le souci c'est que comme sa fait que quelques semaines que je me suis mis à joomla c'est encore super vague les fonctions etc. Du coup je cherchais quelque chose de vraiment complet. En gros a l'heure actuelle, je peux gérer deux vues, controllers et modèles associé (donc un pour l'affichage en liste et l'autre pour l’édition ou l'enregistrement d'un nouvel élément), dès que j'essaie d'étoffer un peu cela j'ai vraiment du mal.

                              As tu des références de livres a me conseiller ?

                              Commentaire

                              Annonce

                              Réduire
                              Aucune annonce pour le moment.

                              Partenaire de l'association

                              Réduire

                              Hébergeur Web PlanetHoster
                              Travaille ...
                              X