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 :

Formulaire mkframework aidez moi


Sujet :

MkFramework

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Membre confirmé
    Homme Profil pro
    Étudiant
    Inscrit en
    Décembre 2017
    Messages
    162
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 28
    Localisation : Dom-Tom

    Informations professionnelles :
    Activité : Étudiant

    Informations forums :
    Inscription : Décembre 2017
    Messages : 162
    Par défaut Formulaire mkframework aidez moi
    Bonjour, voila je n'arrive pas a faire mes getInputCheckBox

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    <div class="form-group">
    		<label class="col-sm-2 control-label">rayonaffect2</label>
       <div class="col-sm-10"><?php echo $oForm->getInputCheckbox('rayonaffect2',$this->tJoinmodel_rayon,array('class'=>'form-control')) ?></div>
    	</div>
    Dois-je modifier quelque chose dans mon modèle rayon ou autre ?

  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 : 43
    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
    Billets dans le blog
    17
    Par défaut
    Le deuxieme parametre de cette methode c'est la valeur de la box

    Par exemple vous avez 3 box: salade, tomate oignon

    ça donnerait:

    Code php : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
     
    <div class="form-group">
    		<label class="col-sm-2 control-label"> Salade ? </label>
    		<div class="col-sm-10"><?php echo $oForm->getInputCheckbox('ingredients[]', 'salade' ,array('class'=>'form-control')) ?></div>
    </div>
    <div class="form-group">
    		<label class="col-sm-2 control-label"> Tomate ? </label>
    		<div class="col-sm-10"><?php echo $oForm->getInputCheckbox('ingredients[]', 'tomate' ,array('class'=>'form-control')) ?></div>
    </div>
    <div class="form-group">
    		<label class="col-sm-2 control-label"> oignon ? </label>
    		<div class="col-sm-10"><?php echo $oForm->getInputCheckbox('ingredients[]', 'oignon' ,array('class'=>'form-control')) ?></div>
    </div>

    ET attntion: si on coche que salade,
    Code php : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
     
    $tValue=_root::getParam('ingredients');
    recevra un tableau contenant le ou les ingredients cochés
    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 confirmé
    Homme Profil pro
    Étudiant
    Inscrit en
    Décembre 2017
    Messages
    162
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 28
    Localisation : Dom-Tom

    Informations professionnelles :
    Activité : Étudiant

    Informations forums :
    Inscription : Décembre 2017
    Messages : 162
    Par défaut
    Citation Envoyé par imikado Voir le message
    Le deuxieme parametre de cette methode c'est la valeur de la box

    Par exemple vous avez 3 box: salade, tomate oignon

    ça donnerait:

    Code php : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
     
    <div class="form-group">
    		<label class="col-sm-2 control-label"> Salade ? </label>
    		<div class="col-sm-10"><?php echo $oForm->getInputCheckbox('ingredients[]', 'salade' ,array('class'=>'form-control')) ?></div>
    </div>
    <div class="form-group">
    		<label class="col-sm-2 control-label"> Tomate ? </label>
    		<div class="col-sm-10"><?php echo $oForm->getInputCheckbox('ingredients[]', 'tomate' ,array('class'=>'form-control')) ?></div>
    </div>
    <div class="form-group">
    		<label class="col-sm-2 control-label"> oignon ? </label>
    		<div class="col-sm-10"><?php echo $oForm->getInputCheckbox('ingredients[]', 'oignon' ,array('class'=>'form-control')) ?></div>
    </div>

    ET attntion: si on coche que salade,
    Code php : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
     
    $tValue=_root::getParam('ingredients');
    recevra un tableau contenant le ou les ingredients cochés


    Code php : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
     
    $tValue=_root::getParam('ingredients');

    Ce code la je le met ou exactement ? Et maintenant je comprend mieux

  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 : 43
    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
    Billets dans le blog
    17
    Par défaut
    dans le module, au moment du processSave()

    votre code dans le module doit ressembler à ceci:
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    public function _edit(){
    		$tMessage=$this->processSave();
     
        (...)
    puis dans le processSave
    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
    27
    28
    29
    30
    31
    32
    33
    34
    35
     
    private function processSave(){
    		if(!_root::getRequest()->isPost() ){ //si ce n'est pas une requete POST on ne soumet pas
    			return null;
    		}
     
    		$oPluginXsrf=new plugin_xsrf();
    		if(!$oPluginXsrf->checkToken( _root::getParam('token') ) ){ //on verifie que le token est valide
    			return array('token'=>$oPluginXsrf->getMessage() );
    		}
     
    		$iId=_root::getParam('id',null);
    		if($iId==null){
    			$oAuteur=new row_auteur;	
    		}else{
    			$oAuteur=model_auteur::getInstance()->findById( _root::getParam('id',null) );
    		}
     
    		$tColumn=array('rayonaffect2','titre');
    		foreach($tColumn as $sColumn){
    			$oAuteur->$sColumn=_root::getParam($sColumn,null) ;
    		}
     
    //ici la recuperation de cette variable checkBox
    $tValue=_root::getParam('ingredients');
     
     
    		if($oAuteur->save()){
    			//une fois enregistre on redirige (vers la page liste)
    			_root::redirect('auteur::list');
    		}else{
    			return $oAuteur->getListError();
    		}
     
    	}

    il faut apres la boucle ur les colonne ajouter ce code, mais la question c'est combien de valeur vous pouvez avoir, ou si c'est "juste" oui/non

    la maniere de l'enregistrer en dependra
    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 confirmé
    Homme Profil pro
    Étudiant
    Inscrit en
    Décembre 2017
    Messages
    162
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 28
    Localisation : Dom-Tom

    Informations professionnelles :
    Activité : Étudiant

    Informations forums :
    Inscription : Décembre 2017
    Messages : 162
    Par défaut
    Citation Envoyé par imikado Voir le message
    dans le module, au moment du processSave()

    votre code dans le module doit ressembler à ceci:
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    public function _edit(){
    		$tMessage=$this->processSave();
     
        (...)
    puis dans le processSave
    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
    27
    28
    29
    30
    31
    32
    33
    34
    35
     
    private function processSave(){
    		if(!_root::getRequest()->isPost() ){ //si ce n'est pas une requete POST on ne soumet pas
    			return null;
    		}
     
    		$oPluginXsrf=new plugin_xsrf();
    		if(!$oPluginXsrf->checkToken( _root::getParam('token') ) ){ //on verifie que le token est valide
    			return array('token'=>$oPluginXsrf->getMessage() );
    		}
     
    		$iId=_root::getParam('id',null);
    		if($iId==null){
    			$oAuteur=new row_auteur;	
    		}else{
    			$oAuteur=model_auteur::getInstance()->findById( _root::getParam('id',null) );
    		}
     
    		$tColumn=array('rayonaffect2','titre');
    		foreach($tColumn as $sColumn){
    			$oAuteur->$sColumn=_root::getParam($sColumn,null) ;
    		}
     
    //ici la recuperation de cette variable checkBox
    $tValue=_root::getParam('ingredients');
     
     
    		if($oAuteur->save()){
    			//une fois enregistre on redirige (vers la page liste)
    			_root::redirect('auteur::list');
    		}else{
    			return $oAuteur->getListError();
    		}
     
    	}

    il faut apres la boucle ur les colonne ajouter ce code, mais la question c'est combien de valeur vous pouvez avoir, ou si c'est "juste" oui/non

    la maniere de l'enregistrer en dependra
    Maintenant j'ai cette erreur "Array to string conversion" je te montre mon code

    Mon main.php

    Code : 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
    27
    28
    29
    30
    private function processSave(){
    		if(!_root::getRequest()->isPost() ){ //si ce n'est pas une requete POST on ne soumet pas
    			return null;
    		}
     
    		$oPluginXsrf=new plugin_xsrf();
    		if(!$oPluginXsrf->checkToken( _root::getParam('token') ) ){ //on verifie que le token est valide
    			return array('token'=>$oPluginXsrf->getMessage() );
    		}
     
    		$tValue=_root::getParam('missionallou');
    		$iId=_root::getParam('id',null);
    		if($iId==null){
    			$oMission=new row_mission;	
    		}else{
    			$oMission=model_mission::getInstance()->findById( _root::getParam('id',null) );
    		}
     
    		$tColumn=array('datejours','rayonaffect1','missionallou','agence');
    		foreach($tColumn as $sColumn){
    			$oMission->$sColumn=_root::getParam($sColumn,null) ;
    		}
     
     
    		if($oMission->save()){
    			//une fois enregistre on redirige (vers la page liste)
    			_root::redirect('formmmm::list');
    		}else{
    			return $oMission->getListError();
    		}
    mon views

    Code : 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
    <div class="form-group">
    		<label class="col-sm-2 control-label">Mise en Rayon</label>
       <div class="col-sm-10"><?php echo $oForm->getInputCheckbox('missionallou[]','Mise en Rayon',array('class'=>'form-control')) ?></div>
    	</div>
     
    	<div class="form-group">
    		<label class="col-sm-2 control-label">Encaissement</label>
       <div class="col-sm-10"><?php echo $oForm->getInputCheckbox('missionallou[]','Encaissement',array('class'=>'form-control')) ?></div>
    	</div>
     
    	<div class="form-group">
    		<label class="col-sm-2 control-label">Rangement/Logistique/Nettoyage</label>
       <div class="col-sm-10"><?php echo $oForm->getInputCheckbox('missionallou[]','Rangement/Logistique/Nettoyage',array('class'=>'form-control')) ?></div>
    	</div>
     
    	<div class="form-group">
    		<label class="col-sm-2 control-label">Inventaire</label>
       <div class="col-sm-10"><?php echo $oForm->getInputCheckbox('missionallou[]','Inventaire',array('class'=>'form-control')) ?></div>
    	</div>
     
    	<div class="form-group">
    		<label class="col-sm-2 control-label">Autre:</label>
       <div class="col-sm-10"><?php echo $oForm->getInputCheckbox('missionallou[]','Autre',array('class'=>'form-control')) ?></div>
    	</div>
    Et je voudrais savoir ou modifier le css de bootstrap quand on a un projet en bootstrap car les cases a cocher sont énorme.

  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 : 43
    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
    Billets dans le blog
    17
    Par défaut
    OUi c'est normal

    Premier question: comment souhaitez vous stoquer ces valeurs en base ?

    vous pouvez par exemple les stoquer dans un champ texte avec un separateur

    mais en tout cas il ne faut pas oublier que vous recever un tableau ce qui n'existe pas en sql

    il faut donc retravailler/convertir ce champ en autre chose, par exemple

    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
    27
    28
    29
    30
    31
    32
    33
    34
    35
    36
     
    private function processSave(){
    		if(!_root::getRequest()->isPost() ){ //si ce n'est pas une requete POST on ne soumet pas
    			return null;
    		}
     
    		$oPluginXsrf=new plugin_xsrf();
    		if(!$oPluginXsrf->checkToken( _root::getParam('token') ) ){ //on verifie que le token est valide
    			return array('token'=>$oPluginXsrf->getMessage() );
    		}
     
     
    		$iId=_root::getParam('id',null);
    		if($iId==null){
    			$oMission=new row_mission;	
    		}else{
    			$oMission=model_mission::getInstance()->findById( _root::getParam('id',null) );
    		}
     
    		$tColumn=array('datejours','rayonaffect1','agence');
    		foreach($tColumn as $sColumn){
    			$oMission->$sColumn=_root::getParam($sColumn,null) ;
    		}
     
     
    		$tMissionallou=_root::getParam('missionallou');
     
    		$oMission->missionallou=implode('#',$tMissionallou);
     
     
    		if($oMission->save()){
    			//une fois enregistre on redirige (vers la page liste)
    			_root::redirect('formmmm::list');
    		}else{
    			return $oMission->getListError();
    		}

    pour la taille du checkbox,il faut changer la classe :

    <div class="col-sm-10"><?php echo $oForm->getInputCheckbox('rayonaffect2', 1 ,array('class'=>'form-check-input')) ?></div>
    Code : 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
     
    <div class="form-group">
    		<label class="col-sm-2 control-label">Mise en Rayon</label>
       <div class="col-sm-10"><?php echo $oForm->getInputCheckbox('missionallou[]','Mise en Rayon',array('class'=>'form-check-input')) ?></div>
    	</div>
     
    	<div class="form-group">
    		<label class="col-sm-2 control-label">Encaissement</label>
       <div class="col-sm-10"><?php echo $oForm->getInputCheckbox('missionallou[]','Encaissement',array('class'=>'form-check-input')) ?></div>
    	</div>
     
    	<div class="form-group">
    		<label class="col-sm-2 control-label">Rangement/Logistique/Nettoyage</label>
       <div class="col-sm-10"><?php echo $oForm->getInputCheckbox('missionallou[]','Rangement/Logistique/Nettoyage',array('class'=>'form-check-input')) ?></div>
    	</div>
     
    	<div class="form-group">
    		<label class="col-sm-2 control-label">Inventaire</label>
       <div class="col-sm-10"><?php echo $oForm->getInputCheckbox('missionallou[]','Inventaire',array('class'=>'form-check-input')) ?></div>
    	</div>
     
    	<div class="form-group">
    		<label class="col-sm-2 control-label">Autre:</label>
       <div class="col-sm-10"><?php echo $oForm->getInputCheckbox('missionallou[]','Autre',array('class'=>'form-check-input')) ?></div>
    	</div>
    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. [2.x] aidez moi : imbriquer formulaire collection symfony2
    Par mar4ever dans le forum Symfony
    Réponses: 2
    Dernier message: 05/03/2014, 18h36
  2. Aidez moi à créer un formulaire SVP
    Par Titico69 dans le forum Macros et VBA Excel
    Réponses: 2
    Dernier message: 29/10/2008, 22h31
  3. Réponses: 10
    Dernier message: 08/06/2008, 13h05
  4. aidez moi à choisir
    Par lvdnono dans le forum DirectX
    Réponses: 4
    Dernier message: 13/05/2004, 09h20
  5. Réponses: 29
    Dernier message: 11/05/2004, 14h18

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