diff --git a/class/listview.php b/class/listview.php index ad789616f489bb473f5d76ec2830b32f7d3ebcb8..4c66fea55dbab9bd49b9c946d84927864b2e328d 100644 --- a/class/listview.php +++ b/class/listview.php @@ -6,10 +6,10 @@ class ListView protected $objArray; public $class; - public function __construct($class, $title, $id=null) + public function __construct($class, $title, $arr=Array()) { $this->title = $title; - $this->objArray = $class::getAll($id); + $this->objArray = $class::getAll($arr); $this->class = $class; } diff --git a/class/objet.php b/class/objet.php index 9198e5802fc054344c025edd5f41e63ba8b8cbb1..b5f3f1d9158e3b3c578e9ae742d704e5d412880d 100644 --- a/class/objet.php +++ b/class/objet.php @@ -23,18 +23,22 @@ class Objet return $dbName; } - public static function getAll($id = null) + public static function getAll($arr = array()) { $className = get_called_class(); $dbName = self::dbName(); $bdd = new Db(); $result = Array(); - if($id == null) { + if(count($arr) == 0) { $requete_prepare = $bdd->db->prepare("SELECT * FROM ".$dbName); // on prépare notre requête $requete_prepare->execute(); } else { - $requete_prepare = $bdd->db->prepare("SELECT * FROM ".$dbName." WHERE id = :id"); - $requete_prepare->execute(array("id" => $id)); + $req = "SELECT * FROM ".$dbName." WHERE 1=1"; + foreach($arr as $k => $a) { + $req .= " AND $k = :$k"; + } + $requete_prepare = $bdd->db->prepare($req); + $requete_prepare->execute($arr); } while($ligne = $requete_prepare->fetch(PDO::FETCH_ASSOC)) { @@ -160,7 +164,7 @@ class Objet return self::dbName()." #".$this->{$this->_primaryAttr}; } - public function getList($title, $id=null) { - return new ListView(get_called_class(), $title, $id); + public function getList($title, $arr=array()) { + return new ListView(get_called_class(), $title, $arr); } } diff --git a/controller/fact.php b/controller/fact.php index 40a08d46c71baa118a1d18a5b673c86ff3824a5d..06152d7be9afa6cb05396c8bee55ba9298361335 100644 --- a/controller/fact.php +++ b/controller/fact.php @@ -47,7 +47,7 @@ switch($action) { echo ' <a href="'.$base_url.$page.'/addProduit'.'?factId='.$_GET["id"].'" type="button" class="btn btn-success">Ajouter un Produit</a>'; echo ' <a href="'.$base_url.$page.'/addOrd'.'?factId='.$_GET["id"].'" type="button" class="btn btn-success">Ajouter une Ordonnance</a>'; echo '</div>'; - $list = LigneFacture::getList("Détails de la facture", $_GET["id"]); + $list = LigneFacture::getList("Détails de la facture", array("facture" => $_GET["id"])); include 'view/list.php'; break; default: