当前位置:  开发笔记 > 编程语言 > 正文

在PHP中使用数组创建WHERE

如何解决《在PHP中使用数组创建WHERE》经验,为你挑选了1个好方法。

如果我的数组包含元素,我想创建一个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).')';
    }   
}

推荐阅读
郑谊099_448
这个屌丝很懒,什么也没留下!
DevBox开发工具箱 | 专业的在线开发工具网站    京公网安备 11010802040832号  |  京ICP备19059560号-6
Copyright © 1998 - 2020 DevBox.CN. All Rights Reserved devBox.cn 开发工具箱 版权所有