在mysql查询中提供无效查询

时间:2013-03-05 11:44:56

标签: php mysql sql

我有这个查询,我不知道代码有什么问题。

    if($_GET['btn1']=="Submit"){    
        $No=$_GET['text_input'];
        $result1=mysql_query("SELECT * FROM  order WHERE `ModelNo`='$No'");
        if (!$result1) { 
        die('Invalid query: ' . mysql_error());
    }
}

这是它给出的错误信息, 查询无效:SQL语法中存在错误;查看与您的MySQL服务器版本对应的手册,以便在第1行的'order WHERE No ='1071764''附近使用正确的语法 请有人帮忙。

2 个答案:

答案 0 :(得分:6)

正如您所看到的,ORDER是mysql中的Reserved关键字,您可以使用反引号将其转义。

SELECT * FROM  `order` WHERE `ModelNo`='$No'

为避免此类问题,请尽可能使用list上的关键字。 :D

答案 1 :(得分:0)

这里有几个问题  1.键入order而不是命令,coz命令 - 它是保留的mysql字  2.对GET参数进行一些验证