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

Langage PHP Discussion :

Syntaxe index php5 et mvc


Sujet :

Langage PHP

  1. #1
    Membre à l'essai
    Profil pro
    Inscrit en
    Avril 2009
    Messages
    18
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Avril 2009
    Messages : 18
    Points : 21
    Points
    21
    Par défaut Syntaxe index php5 et mvc
    bonjour,
    J'aimerais avoir l'avis de personne plus expérimenter que moi sur la structure de l'index d'une application intranet que je suis en train de concevoir.

    index.php
    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
    37
    38
    39
    40
    41
    42
    43
    44
    45
    46
    47
    48
     
    <?php
    //démarage de la session
        session_start();
     
    //fichier de configuration et bibliothèque de fonction
        require_once('APPLICATION/CONFIG/Constant.php');
        require_once(WAY_LIBRARY.'tools.lib.php');
     
    //inclusion des classes communes
        tools::makeRequire(WAY_COMMON);
     
    //inclusion des modèles
        tools::makeRequire(WAY_MODEL);
    //tools::makeRequire(WAY_CONTROLLER);
    //analyse de l'url
        tools::analysisUrl(array('page','view'));
     
        Controller_Template::$db = new MyPDO(DSN, USER, PASSWORD);
     
    //Inclusion EnTete HTTP
        include(WAY_VIEW.'header.tpl');
    ?>
        <div id='header'>
            <?php include(WAY_VIEW.'headerTitle.tpl');?>
        </div>          <!--fin div EnTete-->
        <div id='center'>
            <div id='leftBlock'>
                <?php
                    require_once(WAY_CONTROLLER.'emplacement.ctrl.php');
                    $ctrlEmp = Controller_Emplacement::getInstance();
                    $ctrlEmp ->menu();
     
                 ?>
            </div>      <!--fin div block gauche contenant un menu-->
            <div id='rightBlock'>
                <div id="rightBlockMenu">
                    <?php include(WAY_MENU.'top.php');?>
                </div>	<!--fin div Menu haut du block droit-->
                <div id="contents">
                    <?php require_once(WAY_CONTROLLER.'content.ctrl.php'); ?>
                </div>	<!--fin div Contenu-->
            </div>      <!--fin div bloc droit-->
        </div> <!--fin div Centre-->
     
    <?php
        include(WAY_VIEW.'/footer.tpl'); //pied de page
    ?>

    J'ai aussi un petit souci pour instancier 2 objet sur la même page. Le premier est celui que j'instancie dans l'index sous la variable $crtlEmp le second que je doit instancier dans le content controleur

    Content.ctrl.php
    Code php : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
     
    switch ($_SESSION['page']) {
            case 'livre':    require_once(WAY_CONTROLLER.$_SESSION['page'].'.ctrl.php');
                            switch ($_SESSION['view']) {
                                case 'liste':  $ctrlLivre= Controller_Livre::getInstance();
                                                 $ctrlLivre->index();
                                                 break;
    J'ai trouvé une solution mais qui ne me convient que moyennement

    Code php : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
     
    $ctrlLivre=new Controller_Livre();
     $ctrlLivre->index();
    l'inconvéniant c'est que je suis obliger de mettre le constructeur de la classe Controller_Livre en public au lieu de protected

  2. #2
    Membre à l'essai
    Profil pro
    Inscrit en
    Avril 2009
    Messages
    18
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Avril 2009
    Messages : 18
    Points : 21
    Points
    21
    Par défaut
    J'ai resolu mon souci d'instanciation

    ancien code
    Code php : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
     
    public static function getInstance()
        {
            $class = get_called_class();
            if(!$class::$instance)
            {
                $class::$instance = new $class();
                return $class::$instance;
            }
        }

    nouveau code
    Code php : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
     
    public static function getInstance()
        {
            $class = get_called_class();
            $class::$instance = new $class();
            return $class::$instance;
        }

    Même si mon nouveau code fonctionne, je ne sait pas si il est vraiment optimisé vu que j'avais repris l'ancien code du tuto php5 de Rossolini

    Votre avis sur la structure de mon index m'interesse toujours

Discussions similaires

  1. [recrutement]Projet PHP5 Objet / MVC / Zend
    Par amarcil dans le forum Autres
    Réponses: 0
    Dernier message: 02/11/2008, 16h17
  2. Vos avis sur mon implémentation MVC en PHP5
    Par Jorael dans le forum Langage
    Réponses: 4
    Dernier message: 08/04/2008, 19h10
  3. MVC et php5. Est-ce utile?
    Par ChriGoLioNaDor dans le forum Langage
    Réponses: 12
    Dernier message: 17/05/2007, 18h30

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