Bonjour/ bonsoir,
Sans intégrer un modèle MVC pour l'instant, j'essaye de m'en rapprocher en séparant les couches. j'ai donc 3 fichiers:
Un premier fichier, qui sera visible par le navigateur et que je pourrai appeler 'vue'
Un second fichier, qui pourrait être considéré comme un controller...
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11 <?php require '../controller/controllerProd.php'; // affichage d'une liste de produits if (!empty ($_GET['production'])) { $controlProd->setListe($_GET['production']); } ?> ... <div id="content-data"> <table width="100%" border="0" cellpadding="0" cellspacing="0" id="liste-fiches"> ...
Et enfin le 3ème fichier, qui va effectuer tout ce qui ressort de mysql
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 require '../core/connect.php'; require '../model/ModelProduction.php'; class ControllerProd { var $modelProduction; function __construct() { // Initialise l'objet modelProduction $this->modelProduction = new ModelProduction($PDO); //$PDO est contenu dans le fichier 'connect.php' } /** * setListe traite la variable et la donne à getListe */ function setListe($setlabo) { $setlabo = !empty ($setlabo) ? filter_var($setlabo, FILTER_SANITIZE_STRING) : NULL; $this->modelProduction->getListe($setlabo); } } $controlProd = new ControllerProd();
Mais le serveur ne reconnait pas l'objet $PDO :
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12 class ModelProduction{ private $db; function __construct($db) { $this->db = $db; } function getListe($getLabo){ //requête pour récupérer une liste de produit en fonction de la variable $_GET } }Pourquoi ?Notice: Undefined variable: PDO in C:\wamp\www\integration\controller\controllerProd.php
Merci,
Partager