2

这是我的查询

INSERT INTO faq (order, heading, content)
VALUES ('$_POST[order]','$_POST[heading]','$_POST[content]')

我在它之前有一个名为 ID 的字段,我将其设置为自动递增和 INT

我收到此错误“错误:您的 SQL 语法有错误;请查看与您的 MySQL 服务器版本相对应的手册,以了解在 'order, heading, content) VALUES ('Order','Title', '内容')' 在第 1 行"

有什么我遗漏的吗,如果 ID 字段不存在,它就可以正常工作?

4

1 回答 1

7

order 是一个 sql 关键字。您需要使用反引号来转义词序

INSERT INTO faq (`order`, `heading`, `content`)
VALUES ('$_POST[order]','$_POST[heading]','$_POST[content]')

此外,您应该转义这些 $_POST 参数,而不是将它们直接插入到 SQL 查询中:

$order = mysql_real_escape_string($_POST['order']);
...
INSERT INTO faq (`order`, `heading`, `content`)
VALUES ('$order','$heading','$content')    
于 2013-06-27T20:26:37.987 回答