跪求解救!php搜索mysql关键字段id可以运行其他字段则报错 t

菜鸟刚上手。。。一下是部分代码

—————————————————————————————————————–

$key = $_get[‘key’];

$query = mysqli_query($conn, “select article from faq where key = ‘”.$key.”‘ “);

if (!$query) {

printf(“error: %s\n”, mysqli_error($conn));

exit();

}

$row=mysqli_fetch_array($query);

echo $row[‘0’];

—————————————————————————————————————–

为了能在表faq中根据key字段来搜索数据库中的article

,key是varchar类型字段纯字母。。。但每次都报错:

mysqli_fetch_array() expects parameter 1 to be mysqli_result, boolean given in

—————————————————————————————————————–

于是就用了printf错误信息:

error: 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 ‘key = ‘nj” at line 1

—————————————————————————————————————–

我改用int类型的id来搜索则能够成功 “select article from faq where id = ‘”.$id.”‘ ”

—————————————————————————————————————–

但为了方便后期更改还是希望用key来搜索,求大神解答。。。

回复讨论(解决方案)

key 是 mysql 保留字,如果挪作他用需转义(`key`)

key 是mysql保留字,用保留字做字段时都要注意,需要转义。

Posted in 未分类

发表评论