[POO] Insertion d'un objet PDO
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'
Code:
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">
... |
Un second fichier, qui pourrait être considéré comme un controller...
Code:
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(); |
Et enfin le 3ème fichier, qui va effectuer tout ce qui ressort de mysql
Code:
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
}
} |
Mais le serveur ne reconnait pas l'objet $PDO :
Citation:
Notice: Undefined variable: PDO in C:\wamp\www\integration\controller\controllerProd.php
Pourquoi ?
Merci,