我为我的生活无法弄清楚为什么当我试图回应时它不输出0。它适用于上一个查询,但不适用于最后一个查询。
// This one works and if there are no movies above 0 then it outpus 0 fine
$tag_movies_result = mysql_query("SELECT * FROM tags WHERE tagname='$n' AND movie > 0");
$total_times_used_movies = mysql_num_rows($tag_movies_result);
// Where as this query returns an error
$tag_shows_result = mysql_query("SELECT * FROM tags WHERE tagname='$n' AND show > 0"); <-- `show`
$total_times_used_shows = mysql_num_rows($tag_shows_result); <-- Line 12
// the error
Warning: mysql_num_rows(): supplied argument is not a valid MySQL result resource in /home/a5410474/public_html/tags/tag.php on line 12
这就是我用它来称呼它
<li><a href="#shows" rel="shows">Shows (<?php echo $total_times_used_shows; ?>)</a></li>
演示:http://mydb.host56.com/tags.php?n=the
列名称SHOWS需要包含在`中。主题已关闭。
答案 0 :(得分:5)
答案 1 :(得分:1)
如果查询中存在错误,则mysql_query返回的值将为FALSE而不是资源。试试这个:
if(!$tag_show_result) {
echo mysql_error();
}
这可以帮助您识别查询中的错误
答案 2 :(得分:0)
实际上,我看到问题可能是什么。在查询失败后,您仍应将echo mysql_error();
添加到该行,但查询中存在错误。单词show
是一个mysql保留字。 Show用于显示有关数据库的信息。你可以用这样的反引号包装它:
`show`
答案 3 :(得分:0)
您的查询中显然存在错误;找到它,你就可以解决问题了。
更重要的是,您应该检查mysql_query的结果是否为FALSE以确保查询成功,如果不成功,则使用mysql_error()输出错误。