如果我的数组包含元素,我想创建一个sql请求:
$sql = ''; $sql.= 'SELECT * FROM maisons, chambres.numero, chambres.etage, chambres.prix, chambres.charges, chambres.id'; $sql.= ' LEFT JOIN chambres'; $sql.= ' ON maisons.id = chambres.maison_id'; $sql.= ' WHERE '; if(isset($tab)) { //$str_cp = implode(', ', $tab); //$sql.= 'maisons.commune_id IN '.$str_cp; if(count($tab) > 0) { for($i=0; $i我正在获取此查询:
SELECT * FROM maisons, chambres.numero, chambres.etage, chambres.prix, chambres.charges, chambres.id LEFT JOIN chambres ON maisons.id = chambres.maison_id WHERE commune_id = 8 OR如果我复制粘贴此查询到phpmyadmin,我会收到此错误:
#1142 - 对于表'numero',用户'bestinvewabi'@'10.0.120.18'拒绝SELECT命令
顺便问一下,你有更好的方法来构造我的查询的WHERE吗?
1> 小智..:试试这段代码:
$sql = ''; $sql.= 'SELECT * FROM maisons, chambres.numero, chambres.etage, chambres.prix, chambres.charges, chambres.id'; $sql.= ' LEFT JOIN chambres'; $sql.= ' ON maisons.id = chambres.maison_id'; $sql.= ' WHERE 1=1 '; if(isset($tab)) { if(count($tab) > 0) { $sql .= ' and commune_id in ('.implode(',', $tab).')'; } }