2
$query2 = "SELECT * FROM wp_posts WHERE post_status = 'publish'";
$result2 = mysql_query($query2);
if (!$result2) {
  die('Invalid query: ' . mysql_error());
}

if (mysql_numrows($result2) == 0) {
    echo("zero");
} else {
    echo(mysql_numrows($result2));
}

..花了一个小时,它应该工作,但它没有,不知道我哪里出错了。

谢谢

4

3 回答 3

2

回覆。您的评论:调用未定义函数 Â die()

看起来您的 die() 语句之前的空格中可能有一些非 ASCII 字符。尝试删除那个空格并重新插入它,也许你会发现数据库错误是什么

于 2012-05-13T19:47:23.737 回答
0

你应该使用这样的查询

 $querystr = "SELECT $wpdb->posts.* FROM $wpdb->posts WHERE $wpdb->posts.post_status = 'publish'";
 $pageposts = $wpdb->get_results($querystr, OBJECT);

应该使用 wpdb 类与数据库进行通信...

于 2012-05-13T19:41:36.653 回答
-1

尝试这个:

$query2 = "SELECT * FROM wp_posts WHERE post_status = 'publish'";
$result2 = mysql_query("$query2");

查询中的双引号。

如果查询中没有双引号,查询将如下所示:

$result2 = mysql_query(SELECT * FROM wp_posts WHERE post_status = 'publish');

代替:

$result2 = mysql_query("SELECT * FROM wp_posts WHERE post_status = 'publish'");
于 2012-05-14T18:12:22.360 回答