php如果id==0不工作

dtcbnfnu  于 2021-06-20  发布在  Mysql
关注(0)|答案(1)|浏览(307)

我试着用3个选择框做一个简单的汽车搜索,问题是当3个选择值为0时要显示所有汽车:只有这部分不起作用:

if($fabricante_id==0 || $modelo_id==0 || $combustivel_id==0){
    $filtros="";
    }

完整代码:

$fabricante_id=isset($_GET['fabricante_id'])?(int)$_GET['fabricante_id']:"0";
    $modelo_id=isset($_GET['modelo_id'])?(int)$_GET['modelo_id']:"0";
    $combustivel_id=isset($_GET['combustivel_id'])?(int)$_GET['combustivel_id']:"0";
    $filtros=NULL;
if($fabricante_id==0 || $modelo_id==0 || $combustivel_id==0){
    $filtros="";
    }    
  if($fabricante_id!=0 || $modelo_id!=0 || $combustivel_id!=0){
    if($fabricante_id!=0){
        $filtros=" where auto_fabricante='{$fabricante_id}' ";
    }
    if($modelo_id!=0){
        if($filtros){
            //$filtros= $filtros ." AND auto_modelo='{$modelo_id}' "; 
            $filtros.=" AND auto_modelo='{$modelo_id}' ";
        }else{
            $filtros="where auto_modelo='{$modelo_id}' ";
        }
    }
    if($combustivel_id!=0){
        if($filtros){
            //$filtros= $filtros ." AND auto_modelo='{$modelo_id}' "; 
            $filtros.=" AND auto_combustivel='{$combustivel_id}' ";
        }else{
            $filtros=" where auto_combustivel='{$combustivel_id}' ";
        }
    }

    $sql="SELECT * 
    FROM automoveis 
    {$filtros} ";
ryhaxcpt

ryhaxcpt1#

php中的and运算符是&&,而不是| |,您需要将其更改为:

if($fabricante_id==0 && $modelo_id==0 && $combustivel_id==0){
    $filtros="";
    }

相关问题