Précédent   Forum des professionnels en informatique > PHP > Langage > Syntaxe
Syntaxe Forum d'entraide sur la syntaxe de PHP et la POO. Avant de poster -> FAQ syntaxe, Cours d'initiation et cours de POO
Partagez cette discussion sur d'autres réseaux sociaux : Viadeo Twitter Google Facebook Digg Delicious MySpace Yahoo
Réponse Proposer ce sujet en actualité
 
Outils de la discussion
Publicité
'
Vieux 17/08/2011, 15h10   #1
Futur Membre du Club
 
Inscription : avril 2009
Messages : 18
Détails du profil
Informations forums :
Inscription : avril 2009
Messages : 18
Points : 15
Points : 15
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 :
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 :
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 :
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
kets14 est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 17/08/2011, 16h41   #2
Futur Membre du Club
 
Inscription : avril 2009
Messages : 18
Détails du profil
Informations forums :
Inscription : avril 2009
Messages : 18
Points : 15
Points : 15
J'ai resolu mon souci d'instanciation

ancien code
Code php :
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 :
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
kets14 est déconnecté   Envoyer un message privé Réponse avec citation 00
Réponse Proposer ce sujet en actualité
Outils de la discussion



Fuseau horaire GMT +2. Il est actuellement 06h58.


 
 
 
 
Partenaires

Hébergement Web