php - MySQL-Making查询使用PHP

标签 php mysql

我有一些基本的查询,如果给定了一些其他参数,我想扩展它。我希望您在看到代码时能够理解我在尝试什么。

$proizvodjac=$_GET["p_proizvodjac"];
$query="SELECT v.proizvodjac,v.naziv,v.godina_proizvodnje,
               v.cijena, v.slika, v.tip, v.broj_vrata, 
               v.gorivo, v.automatik, p.naziv_poslovnice
        FROM vozilo v
        LEFT JOIN poslovnica p ON poslovnica_id=idposlovnica";

if($proizvodjac!="NULL"){
    $query=$query."WHERE v.proizvodjac=\"$proizvodjac\"";
}

我正在使用此查询在数据库中进行搜索。 当 $proizvodjac=="NULL" 一切正常,因为它没有进入 if 语句,但是当 $proizvodjac!="NULL" 时,我得到以下错误

"You have an error in your SQL syntax; 
 check the manual that corresponds to your MySQL server version for the 
 right syntax to use near 'v.proizvodjac="Skoda"' at line 4"

请帮助我的代码有什么问题?谢谢 我从这个表格中得到 $proizvodjac

<select name="p_proizvodjac">
                    <option value="NULL"></option>
                    <option value="Audi">Audi</option>
                    <option value="Skoda">Skoda</option>
                    <option value="Renault">Renault</option>
                    <option value="HYUNDAI">HYUNDAI</option>
                    <option value="VW">VW</option>
                    <option value="Fiat">Fiat</option>
                    <option value="Opel">Opel </option>
                </select>

最佳答案

需要在if语句的查询部分加一个空格:

$proizvodjac=$_GET["p_proizvodjac"];
        $query="SELECT v.proizvodjac,v.naziv,v.godina_proizvodnje, 
v.cijena, v.slika, v.tip, v.broj_vrata, v.gorivo, v.automatik, p.naziv_poslovnice
        FROM vozilo v
        LEFT JOIN poslovnica p
        ON poslovnica_id=idposlovnica";
        if($proizvodjac!="NULL"){
            $query=$query." WHERE v.proizvodjac=\"$proizvodjac\"";
        }

否则 WHERE 直接连接到第一部分,这会导致错误。

关于php - MySQL-Making查询使用PHP,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/31699859/

相关文章:

Php MySql 未知错误

mysql - 如何上传文件(csv 或文本)并在 Zope 框架中读取内容

php - 将值从 HTML 表单传递到 php 变量

mysql - 无法通过 PLESK 导入数据库

MySQL 连接同一字段

php - AS2 多字符串替换

php - Apache 与 Docker 显示 [2002] 无法连接到本地 MySQL 服务器

PHP 正则表达式删除最后匹配的模式字符串

php - 撇号和 Javascript/PHP

javascript - 客户端到服务器端谷歌分析 MP 客户端 ID