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 :

Souci dans la création de la partie Public


Sujet :

MkFramework

  1. #1
    Nouveau Candidat au Club
    Homme Profil pro
    Développeur Web
    Inscrit en
    Juillet 2011
    Messages
    6
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : Congo-Brazzaville

    Informations professionnelles :
    Activité : Développeur Web
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Juillet 2011
    Messages : 6
    Points : 1
    Points
    1
    Par défaut Souci dans la création de la partie Public
    Bonjour j'ai un souci dans la création de la partie Public, j'ai créé la partie administration du site avec authentification, mais je suis confronté à la réalisation de la partie public, mon souci est que je veux afficher une information provenant de la base de données avec des images sans plutôt avoir une liste.

    la methode index() afficher juste les infos de la methode show() sans appeler la methode list()
    Et pareil pour le menu, en cliquant sur un lien du menu celui-ci doit me renvoyer la methode show() et non list()

    Bien cordialement !

  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
    Vous avez suivi le tutoriel pour créer un site full cache et la partie générée à des liens erronés c'est ça ?
    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
    Nouveau Candidat au Club
    Homme Profil pro
    Développeur Web
    Inscrit en
    Juillet 2011
    Messages
    6
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : Congo-Brazzaville

    Informations professionnelles :
    Activité : Développeur Web
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Juillet 2011
    Messages : 6
    Points : 1
    Points
    1
    Par défaut
    j'ai suivi le tuto et le menu n'a pas de problème sauf que je crée un site composé d'une partie privée et d'une partie publique, la partie publique a été créée sans problème et je me connecte par authentification, il dispose d'un menu qui marche très bien j'ai même implémenté du html5 et css3. Cependant s'agissant de la partie public, j'ai créé mon template, j'ai créé mon menu, mais en associant mon module accueil à l'action index qui la page d'accueil de mon site, j'ai changé dans la méthode index qu'il m'affiche que la méthode show() et list(), ça marche mais on cliquant sur le lien du ménu j'ai une erreur.

  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
    Citation Envoyé par chrismerveil Voir le message
    jCependant s'agissant de la partie public, j'ai créé mon template, j'ai créé mon menu, mais en associant mon module accueil à l'action index qui la page d'accueil de mon site, j'ai changé dans la méthode index qu'il m'affiche que la méthode show() et list(), ça marche mais on cliquant sur le lien du ménu j'ai une erreur.
    Pouvez vous poster le code en question ?
    note: quel erreur avez-vous ?

    Pour une action, par exemple _index() on instancie une vue, on lui assigne des variables et on l'ajoute au layout, j'ai du mal à comprendre "qu'il m'affiche que la méthode show() et list()"

    Code php : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
     
    public function _index(){
     
       //code avant
     
       $oView=new _view('monModule::index');
       $oView->mavariable=$mavariable; // on rempli la vue
     
      //puis on l'ajoute au layout
      $this->oLayout->add('main',$oView);
     
    }
    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
    Nouveau Candidat au Club
    Homme Profil pro
    Développeur Web
    Inscrit en
    Juillet 2011
    Messages
    6
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : Congo-Brazzaville

    Informations professionnelles :
    Activité : Développeur Web
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Juillet 2011
    Messages : 6
    Points : 1
    Points
    1
    Par défaut
    Excusez-moi du retard j'étais un peu malade que je ne me suis pas connecté ces derneirs temps: donc voici l'erreur qu'il m'affiche qu'on je clique sur le lien de la page en cours.

    Erreur

    Trying to get property of non-object
    #0 D:\wamp\www\softwaresolutions\data\genere\software\module\publicsociety\view\show.php(5): exception_error_handler(8, 'Trying to get p...', 'D:\\wamp\\www\\sof...', 5, Array)
    #1 D:\wamp\www\softwaresolutions\lib\framework\class_view.php(85): include('D:\\wamp\\www\\sof...')
    #2 D:\wamp\www\softwaresolutions\lib\framework\class_layout.php(158): _view->show()
    #3 D:\wamp\www\softwaresolutions\data\genere\software\layout\template2.php(35): _layout->load('main')
    #4 D:\wamp\www\softwaresolutions\lib\framework\class_layout.php(122): include('D:\\wamp\\www\\sof...')
    #5 D:\wamp\www\softwaresolutions\data\genere\software\module\mainPublic\main.php(118): _layout->show()
    #6 D:\wamp\www\softwaresolutions\lib\framework\class_root.php(275): module_mainPublic->after()
    #7 D:\wamp\www\softwaresolutions\data\genere\software\public\index.php(48): _root->run()
    #8 {main}

    Detail:
    #0 D:\wamp\www\softwaresolutions\data\genere\software\module\publicsociety\view\show.php (5)
    exception_error_handler( , 'Trying to get property of non-object' , 'D:\wamp\www\softwaresolutions\data\genere\software\module\publicsociety\view\show.php' , , Array ( ) )
    #1 D:\wamp\www\softwaresolutions\lib\framework\class_view.php (85)
    include( 'D:\wamp\www\softwaresolutions\data\genere\software\module\publicsociety\view\show.php' )
    #2 D:\wamp\www\softwaresolutions\lib\framework\class_layout.php (158)
    _view -> show( )
    #3 D:\wamp\www\softwaresolutions\data\genere\software\layout\template2.php (35)
    _layout -> load( 'main' )
    #4 D:\wamp\www\softwaresolutions\lib\framework\class_layout.php (122)
    include( 'D:\wamp\www\softwaresolutions\data\genere\software\layout\template2.php' )
    #5 D:\wamp\www\softwaresolutions\data\genere\software\module\mainPublic\main.php (118)
    _layout -> show( )
    #6 D:\wamp\www\softwaresolutions\lib\framework\class_root.php (275)
    module_mainPublic -> after( )
    #7 D:\wamp\www\softwaresolutions\data\genere\software\public\index.php (48)
    _root -> run( )
    #8 {main}

  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
    Vu l'erreur, je pencherai pour un id non passé (ou vide) au module, ainsi dans la vue show il essaie d'afficher des propriétés de l'enregistrement qui est NULL
    Verifier dans votre fichier main.php que vous recuperer bien l'id de l'enregistrement à afficher
    Framework php sécurisé et simple à prendre en main avec générateur web http://mkframework.com/ (hebergé sur developpez.com)
    Mes cours/tutoriaux

  7. #7
    Nouveau Candidat au Club
    Homme Profil pro
    Développeur Web
    Inscrit en
    Juillet 2011
    Messages
    6
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : Congo-Brazzaville

    Informations professionnelles :
    Activité : Développeur Web
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Juillet 2011
    Messages : 6
    Points : 1
    Points
    1
    Par défaut
    voici ma vue pour être explicite et j'ai même un menu associé à mon site
    <code>
    class module_publicsociety extends abstract_moduleembedded{

    public static $sModuleName='publicsociety';
    public static $sRootModule;
    public static $tRootParams;

    public function __construct(){
    self::setRootLink(_root::getParamNav(),null);
    }
    public static function setRootLink($sRootModule,$tRootParams=null){
    self::$sRootModule=$sRootModule;
    self::$tRootParams=$tRootParams;
    }
    public static function getLink($sAction,$tParam=null){
    return parent::_getLink(self::$sRootModule,self::$tRootParams,self::$sModuleName,$sAction,$tParam);
    }
    public static function getParam($sVar,$uDefault=null){
    return parent::_getParam(self::$sModuleName,$sVar,$uDefault);
    }
    public static function redirect($sModuleAction,$tModuleParam=null){
    return parent::_redirect(self::$sRootModule,self::$tRootParams,self::$sModuleName,$sModuleAction,$tModuleParam);
    }

    /*
    Pour integrer au sein d'un autre module:

    //instancier le module
    $oModuleExamplemodule=new module_publicsociety();

    //si vous souhaitez indiquer au module integrable des informations sur le module parent
    //$oModuleExamplemodule->setRootLink('module::action',array('parametre'=>_root::getParam('parametre')));

    //recupere la vue du module
    $oViewModule=$oModuleExamplemodule->_index();

    //assigner la vue retournee a votre layout
    $this->oLayout->add('main',$oViewModule);
    */


    public function _index(){
    $sAction='_'.self::getParam('Action','list');
    return $this->$sAction();

    }


    public function _list(){

    $tSociety=model_society::getInstance()->findAll();

    $oView=new _view('publicsociety::list');
    $oView->tSociety=$tSociety;



    return $oView;

    }







    public function _show(){
    $oSociety=model_society::getInstance()->findById( module_publicsociety::getParam('id') );

    $oView=new _view('publicsociety::show');
    $oView->oSociety=$oSociety;


    return $oView;
    }




    private function processSave(){
    if(!_root::getRequest()->isPost() or _root::getParam('formmodule')!=self::$sModuleName ){ //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=module_publicsociety::getParam('id',null);
    if($iId==null){
    $oSociety=new row_society;
    }else{
    $oSociety=model_society::getInstance()->findById( module_publicsociety::getParam('id',null) );
    }

    $tColumn=array('descripoffice');
    foreach($tColumn as $sColumn){
    $oSociety->$sColumn=_root::getParam($sColumn,null) ;
    }


    if($oSociety->save()){
    //une fois enregistre on redirige (vers la page liste)
    $this->redirect('list');
    }else{
    return $oSociety->getListError();
    }

    }






    }
    </code>
    le problème en changeant cette ligne <code> $sAction='_'.self::getParam('Action','list');</code> par <code>$sAction='_'.self::getParam('Action','show');</code> j'ai une erreur on cliquant sur le menu qui me renvoie la vue.

  8. #8
    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
    Citation Envoyé par chrismerveil Voir le message
    le problème en changeant cette ligne <code> $sAction='_'.self::getParam('Action','list');</code> par <code>$sAction='_'.self::getParam('Action','show');</code> j'ai une erreur on cliquant sur le menu qui me renvoie la vue.
    C'est normal: vous indiquez que l'action par défaut n'est plus list: qui permet de lister tous les enregistrements sans critères par show, qui lui nécessite un critère: l'id de l'enregistrement à afficher
    Si vous souhaitez conserver ce comportement, il fautdrait indiquer quel enregistremetn afficher en utilisant
    Code php : Sélectionner tout - Visualiser dans une fenêtre à part
    _root::setParam(self::$sModuleName.'id',  'l id de l enregistrement a afficher' )
    Framework php sécurisé et simple à prendre en main avec générateur web http://mkframework.com/ (hebergé sur developpez.com)
    Mes cours/tutoriaux

  9. #9
    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
    Comment choisissez-vous quel enregistrement afficher ? vous passer un parametre id dans votre application ?
    Framework php sécurisé et simple à prendre en main avec générateur web http://mkframework.com/ (hebergé sur developpez.com)
    Mes cours/tutoriaux

  10. #10
    Nouveau Candidat au Club
    Homme Profil pro
    Développeur Web
    Inscrit en
    Juillet 2011
    Messages
    6
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : Congo-Brazzaville

    Informations professionnelles :
    Activité : Développeur Web
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Juillet 2011
    Messages : 6
    Points : 1
    Points
    1
    Par défaut
    Citation Envoyé par imikado Voir le message
    Comment choisissez-vous quel enregistrement afficher ? vous passer un parametre id dans votre application ?
    Non on générant le crud je choisi la table, ensuite je code juste dans le tableau qui s'affiche l'action CRUD page d'affichage du detail. Il y a t-il un moyen plus simple pour l'affichage de mes enregistrements avec les images?

  11. #11
    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
    Si vous laissez la génération par défaut : list à la place de show
    vous avez un tableau listant les enregistrements en base avec les liens pour ajouter,modifier,afficher supprimer.

    Quel est le problème exactement ?

    Que souhaitez-vous afficher ?

    note: pour afficher les images des fichiers uploadé, il vous suffit de mettre dans votre vue:
    Code php : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
     
    <img src="<?php echo $obj->pathImage?>"/>
    Framework php sécurisé et simple à prendre en main avec générateur web http://mkframework.com/ (hebergé sur developpez.com)
    Mes cours/tutoriaux

  12. #12
    Nouveau Candidat au Club
    Homme Profil pro
    Développeur Web
    Inscrit en
    Juillet 2011
    Messages
    6
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : Congo-Brazzaville

    Informations professionnelles :
    Activité : Développeur Web
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Juillet 2011
    Messages : 6
    Points : 1
    Points
    1
    Par défaut
    Citation Envoyé par imikado Voir le message
    Si vous laissez la génération par défaut : list à la place de show
    vous avez un tableau listant les enregistrements en base avec les liens pour ajouter,modifier,afficher supprimer.

    Quel est le problème exactement ?

    Que souhaitez-vous afficher ?

    note: pour afficher les images des fichiers uploadé, il vous suffit de mettre dans votre vue:
    Code php : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
     
    <img src="<?php echo $obj->pathImage?>"/>
    Je veux créer deux pages :
    Dans la première vue je veux afficher un enregistrement contenant un titre et une description;
    Dans la seconde vue je veux afficher une liste d'actualités contenant une image, un titre et une description;
    A noter que dans la seconde vue qu'on je clique sur une actualité elle doit me renvoyer toute la description de l'actualité, l'image associé à l'actualité et sa description complète.

  13. #13
    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
    La première page est l'appel à une action "_show()" d'un module

    La seconde est l'affichage d'un simple CRUD où l'on aurait désactivé les liens d'edition/suppression et ajout.

    Pour l'affichage de l'image dans la liste, editez le fichier view/list.php pour ajouter un
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
     
    <img src="<?php echo $oEnregistrement->pathImage?>"/>
    Dans le tableau les listant
    Framework php sécurisé et simple à prendre en main avec générateur web http://mkframework.com/ (hebergé sur developpez.com)
    Mes cours/tutoriaux

Discussions similaires

  1. [MySQL-5.6] Soucis dans la création d'une grande base de donnée
    Par daniel1985 dans le forum Administration
    Réponses: 4
    Dernier message: 04/03/2013, 15h07
  2. Soucis dans le Wizard de création d'un CProject
    Par kkt8 dans le forum Eclipse Platform
    Réponses: 0
    Dernier message: 24/01/2011, 15h08
  3. Souci dans la création nouvel enregistrement
    Par cobaye13 dans le forum IHM
    Réponses: 1
    Dernier message: 08/08/2008, 15h22
  4. [Eclipse 3.0] [Tomcat] problème dans la création du .war
    Par lipao17 dans le forum Eclipse Java
    Réponses: 1
    Dernier message: 12/03/2005, 13h45

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