public function searchAction() { // Création de la vue principale $this->begin(); // Création de la vue des résultats de la recherche $ville = $_GET["ville"]; $surface = $_GET["surface"]; $loyer = $_GET["loyer"]; $AppartementView = new AppartementView(); $sql = "SELECT * FROM Appartement INNER JOIN Adresse ON Appartement.id_adresse=Adresse.id_adresse "; /*WHERE ville='" . $ville . "' AND surface " . $surface . " AND loyer" . $loyer;*/ $clauseWhere = FALSE; $tout = "indifférent"; // Clause WHERE pour la ville if ($ville != $tout) { $sql .= " WHERE ville='{$ville}' "; $clauseWhere = TRUE; } if ($surface != $tout) { if ($clauseWhere) { $sql .= " AND surface {$surface} "; } else { $sql .= " WHERE surface {$surface} "; } } if ($loyer != $tout) { if ($clauseWhere) { $sql .= " AND loyer {$loyer} "; } else { $sql .= " WHERE loyer {$loyer} "; } } $this->content = $AppartementView->generateListDisplay(Appartement::find($sql)); // Création et affichage de la vue globale $this->end(); }