-1

只是想知道为什么我会收到此错误。

Warning: mysql_result() expects parameter 1 to be resource, boolean given in C:\wamp\www\Active\Formula One\script\blog.php on line 37

使用了一些调试来得到这个进一步的错误

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 ''categories' WHERE 'name' = 'nocat'' at line 1

blog.php - 只是代码片段,所以不要填满页面

function category_exists($name) {
    $name = mysql_real_escape_string($name);

    $query = mysql_query("SELECT COUNT(1) FROM 'categories' WHERE 'name' = '{$name}'");

    echo mysql_error();

    return ( mysql_result($query, 0) == '0' ) ? false : true; 
}

function add_category($name) {
    $name = mysql_real_escape_string($name);

    mysql_query("INSERT INTO 'blog_categories' SET 'name' = '{$name}'");

}

任何帮助将不胜感激。和一个快乐的圣诞节。

4

1 回答 1

3

对列名和表名使用反引号而不是引号

mysql_query("SELECT COUNT(1) FROM `categories` WHERE `name` = '{$name}'");

如果您使用引号,它将被解释为字符串而不是名称。

你混淆了insert语法update。采用

mysql_query("INSERT INTO `blog_categories` (`name`) values ('{$name}'");
于 2012-12-25T00:37:06.023 回答