IdentifiantMot de passe
Loading...
Mot de passe oublié ?Je m'inscris ! (gratuit)
Navigation

Inscrivez-vous gratuitement
pour pouvoir participer, suivre les réponses en temps réel, voter pour les messages, poser vos propres questions et recevoir la newsletter

MkFramework Discussion :

Comment créer un menu deroulant


Sujet :

MkFramework

  1. #1
    Membre habitué
    Homme Profil pro
    Assistant statisticien
    Inscrit en
    Juillet 2009
    Messages
    132
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : Réunion

    Informations professionnelles :
    Activité : Assistant statisticien
    Secteur : Santé

    Informations forums :
    Inscription : Juillet 2009
    Messages : 132
    Points : 168
    Points
    168
    Par défaut Comment créer un menu deroulant
    Bonjour
    j'ai créé une application avec bootstrap
    Sur une page que j'ai appelé saisie il y a des champs
    J'ai voulu que ce soit des champs avec getselect()
    Il y a un champs mois janvier février ....
    Un champ année 2015 2016 2017...
    Un champ indicateur
    Etc...
    Je n'arrive à créer le contenu de ces menus déroulant
    J'ai créé la couche model mais à ce moment je ne peux sélectionner qu'un id et un choix de valeur

    Comment faire?
    Merci pour ton aide

  2. #2
    Rédacteur
    Avatar de imikado
    Homme Profil pro
    Développeur informatique
    Inscrit en
    Décembre 2006
    Messages
    5 239
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 42
    Localisation : France, Val de Marne (Île de France)

    Informations professionnelles :
    Activité : Développeur informatique
    Secteur : Finance

    Informations forums :
    Inscription : Décembre 2006
    Messages : 5 239
    Points : 19 100
    Points
    19 100
    Billets dans le blog
    17
    Par défaut
    Bonsoir, pour cela, très simple:

    Créez un fichier model contenant la méthode getSelect

    par exemple pour l'année:
    Code php : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
    18
    19
    20
    21
    22
    23
    24
    25
    26
     
    <?php
    class model_annee extends abstract_model{
     
     
    	public static function getInstance(){
    		return self::_getInstance(__CLASS__);
    	}
     
     
     
     
    	public function getSelect(){
    		$tab=array();
     
                    for($i=2000;$i<2016;$i++){
                        $tab[$i]=$i;
                    }
     
     
    		return $tab;
    	}
     
     
     
    }

    L'idée est simple il faut
    1. que la classe etende abstract_model
    2. possede la méthode getInstance
    3. contienne une méthode getSelect retournant un tableau indexé: la clé represente ce qui sera enregistré, la valeur le libelle dans le menu déroulant

    J'ajouterai prochainement un générateur dans le builder pour ce type de besoin
    Framework php sécurisé et simple à prendre en main avec générateur web http://mkframework.com/ (hebergé sur developpez.com)
    Mes cours/tutoriaux

  3. #3
    Membre habitué
    Homme Profil pro
    Assistant statisticien
    Inscrit en
    Juillet 2009
    Messages
    132
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : Réunion

    Informations professionnelles :
    Activité : Assistant statisticien
    Secteur : Santé

    Informations forums :
    Inscription : Juillet 2009
    Messages : 132
    Points : 168
    Points
    168
    Par défaut Comment créer un menu deroulant 2
    Citation Envoyé par imikado Voir le message
    Bonsoir, pour cela, très simple:

    Créez un fichier model contenant la méthode getSelect

    par exemple pour l'année:
    Code php : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
    18
    19
    20
    21
    22
    23
    24
    25
    26
     
    <?php
    class model_annee extends abstract_model{
     
     
    	public static function getInstance(){
    		return self::_getInstance(__CLASS__);
    	}
     
     
     
     
    	public function getSelect(){
    		$tab=array();
     
                    for($i=2000;$i<2016;$i++){
                        $tab[$i]=$i;
                    }
     
     
    		return $tab;
    	}
     
     
     
    }

    L'idée est simple il faut
    1. que la classe etende abstract_model
    2. possede la méthode getInstance
    3. contienne une méthode getSelect retournant un tableau indexé: la clé represente ce qui sera enregistré, la valeur le libelle dans le menu déroulant

    J'ajouterai prochainement un générateur dans le builder pour ce type de besoin
    J'utilise le générateur de couche modèle pour créer cette class model_annee?

  4. #4
    Rédacteur
    Avatar de imikado
    Homme Profil pro
    Développeur informatique
    Inscrit en
    Décembre 2006
    Messages
    5 239
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 42
    Localisation : France, Val de Marne (Île de France)

    Informations professionnelles :
    Activité : Développeur informatique
    Secteur : Finance

    Informations forums :
    Inscription : Décembre 2006
    Messages : 5 239
    Points : 19 100
    Points
    19 100
    Billets dans le blog
    17
    Par défaut
    Non justement c'est une besoin à part, ou sinon vous pouvez créer une base de donnée csv
    La tout sera géré dans le builder
    Framework php sécurisé et simple à prendre en main avec générateur web http://mkframework.com/ (hebergé sur developpez.com)
    Mes cours/tutoriaux

  5. #5
    Membre habitué
    Homme Profil pro
    Assistant statisticien
    Inscrit en
    Juillet 2009
    Messages
    132
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : Réunion

    Informations professionnelles :
    Activité : Assistant statisticien
    Secteur : Santé

    Informations forums :
    Inscription : Juillet 2009
    Messages : 132
    Points : 168
    Points
    168
    Par défaut Comment créer un menu deroulant etape 3
    bonjour
    j'ai fait ça :
    public function ListMois(){
    return $this->findMany('SELECT DISTINCT MOIS FROM '.$this->sTable);
    }
    public function ListAnnee(){
    return $this->findMany('SELECT DISTINCT ANNEE FROM '.$this->sTable);
    }
    public function ListService(){
    return $this->findMany('SELECT DISTINCT SERVICE FROM '.$this->sTable);
    }

    public function ListSmiley(){
    return $this->findMany('SELECT DISTINCT SMILEY FROM '.$this->sTable);
    }

    public function ListIndicateurs(){
    return $this->findMany('SELECT DISTINCT INDICATEURS FROM '.$this->sTable);
    }

    public function moisGetselect(){
    $tab=$this->ListMois();
    $tSelect=array();
    if($tab){
    foreach($tab as $oRow){
    $tSelect[]=$oRow->MOIS;// $tSelect[$oRow->id]=$oRow->MOIS;
    }
    }

    return $tSelect;

    }

    public function anneeGetselect(){
    $tab=$this->ListAnnee();
    $tSelect=array();
    if($tab){
    foreach($tab as $oRow){
    $tSelect[]=$oRow->ANNEE;//$tSelect[ $oRow->id ]=$oRow->ANNEE;
    }
    }
    return $tSelect;
    }

    public function serviceGetselect(){
    $tab=$this->ListService();
    $tSelect=array();
    if($tab){
    foreach($tab as $oRow){
    $tSelect[]=$oRow->SERVICE;
    }
    }
    return $tSelect;
    }
    public function smileyGetselect(){
    $tab=$this->ListSmiley();
    $tSelect=array();
    if($tab){
    foreach($tab as $oRow){
    $tSelect[]=$oRow->SMILEY;
    }
    }
    return $tSelect;
    }
    public function indicateursGetselect(){
    $tab=$this->ListIndicateurs();
    $tSelect=array();
    if($tab){
    foreach($tab as $oRow){
    $tSelect[]=$oRow->INDICATEURS;
    }
    }
    return $tSelect;
    }

    puis dans mon controleur :
    $oView->t1=model_direction_situation::getInstance()->moisGetselect();
    $oView->t2=model_direction_situation::getInstance()->anneeGetselect();
    $oView->t3=model_direction_situation::getInstance()->serviceGetselect();
    $oView->t4=model_direction_situation::getInstance()->smileyGetselect();
    $oView->t5=model_direction_situation::getInstance()->indicateursGetselect();
    puis dans la vue par menus déroulant
    $oForm->getSelect('MOIS',$this->t1,array('class'=>'form-control'))

  6. #6
    Rédacteur
    Avatar de imikado
    Homme Profil pro
    Développeur informatique
    Inscrit en
    Décembre 2006
    Messages
    5 239
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 42
    Localisation : France, Val de Marne (Île de France)

    Informations professionnelles :
    Activité : Développeur informatique
    Secteur : Finance

    Informations forums :
    Inscription : Décembre 2006
    Messages : 5 239
    Points : 19 100
    Points
    19 100
    Billets dans le blog
    17
    Par défaut
    Bonne idée
    Framework php sécurisé et simple à prendre en main avec générateur web http://mkframework.com/ (hebergé sur developpez.com)
    Mes cours/tutoriaux

+ Répondre à la discussion
Cette discussion est résolue.

Discussions similaires

  1. Comment créer un menu personnalisé avec Access2007
    Par marionAccess dans le forum Access
    Réponses: 6
    Dernier message: 24/01/2007, 16h29
  2. comment controler un menu deroulant?
    Par Khalid.bounouader dans le forum Général JavaScript
    Réponses: 2
    Dernier message: 28/08/2006, 19h20
  3. [Conception] Comment créer des menu graphiques ?
    Par vinzzzz dans le forum Webdesign & Ergonomie
    Réponses: 1
    Dernier message: 21/04/2006, 19h04
  4. Comment créer un menu déroulant ?
    Par magic8392 dans le forum Général JavaScript
    Réponses: 10
    Dernier message: 25/10/2005, 11h37
  5. Comment créer un menu popup style XP ?
    Par chaours dans le forum Composants VCL
    Réponses: 4
    Dernier message: 29/09/2003, 09h38

Partager

Partager
  • Envoyer la discussion sur Viadeo
  • Envoyer la discussion sur Twitter
  • Envoyer la discussion sur Google
  • Envoyer la discussion sur Facebook
  • Envoyer la discussion sur Digg
  • Envoyer la discussion sur Delicious
  • Envoyer la discussion sur MySpace
  • Envoyer la discussion sur Yahoo