Je fais cela pour construire une requête et d'obtenir des sièges d'une table « vols » dans CodeIgniterPhp générateur de requêtes pour OU et condition ET
$this->load->database();
$this->load->dbforge();
$where = "seatsF>0 OR seatsB>0 OR seatsE>0";
$this->db->where($where);
$this->db->where('approved', 1);
$query=$this->db->get("Flights");
$result=$query->result_array();
echo $this->db->last_query();
die;
return $result;
Ma requête en cours généré par le constructeur de requêtes en php est
SELECT * FROM `Flights` WHERE `seatsF` >0 OR `seatsB` >0 OR `seatsE` >0 AND `approved` = 1
Mais le résultat contient le résultat où « approuvé » = 0 aussi, je suppose que ce que ma requête est en train de faire est qu'il obtient 1 seatsF> 0 puis OU courtscircuits et retourne vrai et il ne vérifie pas vraiment toute requête . Comment puis-je produire une requête comme celle-ci par constructeur de requête: -
SELECT * FROM `Flights` WHERE `(seatsF` >0 OR `seatsB` >0 OR `seatsE` >0) AND `approved` = 1
Non, c'est différent, je sais comment faire la partie où, était juste confus dans "()" choses. – Asim