作者正在使用此代码将类别名称放入类别表中:
function add_category($name) {
$name = mysql_real_escape_string($name);
mysql_query("INSERT INTO `categories` VALUES `name` = `{$name}`");
}
但它对我不起作用(我正在使用PHP Version 5.3.3-7和Ver 14.14 Distrib 5.1.49对debian squeeze进行测试)。
我正在连接到mysql和数据库,但我们通过命令行直接在mysql中尝试查询,我有以下错误:
ERROR 1054 (42S22): Unknown column 'uncategorized' in 'field list'
然后我注意到使用此查询正在运行:
INSERT INTO categories(name)VALUES('uncategorized');
但是我想知道是否有一种方法可以使用与作者使用相同的方法,以及它是否比我发现的工具更好,更安全,更快(或者更有用)。
谢谢!
答案 0 :(得分:3)
你在这里使用错误的引号:
mysql_query("INSERT INTO `categories` VALUES `name` = `{$name}`");
使用单引号:
mysql_query("INSERT INTO `categories` VALUES `name` = '{$name}'");
单引号帧数据,而反引号`
用于标记数据库元素 - 表,列等。
答案 1 :(得分:1)
你可以这样做
mysql_query("INSERT INTO categories(name) VALUES('$name')");