结果始终为1:
$sql = 'SELECT COUNT(Vote) FROM ' . $table;
$res = mysql_query($sql, $conn);
$vote_total = mysql_num_rows($res);我在phpMyAdmin中运行了$sql查询,它返回3,所以查询不是问题所在。$vote_total被全局初始化为0,因此1来自于某个地方。我还需要提供哪些信息才能更容易地帮助我?
谢谢你,莱恩
发布于 2010-09-23 03:15:31
mysql_num_rows返回选定的行数,而不是某一行的字段。使用mysql_fetch_row提取查询中选择的行:
$sql = 'SELECT COUNT(Vote) FROM ' . $table;
$res = mysql_query($sql, $conn);
$row = mysql_fetch_row($res);
$vote_total = $row[0];您还可以使用mysql_result来获取一行并获取某个字段:
$vote_total = mysql_result($res, 0, 0);这将获取第一行(从零开始)并返回第一个字段(从零开始)。
发布于 2010-09-23 03:15:46
永远只会有一行。在那一排将会有计票数。
$sql = 'SELECT COUNT(Vote) FROM ' . $table;
$res = mysql_query($sql, $conn);
$vote_array = mysql_fetch_array($res);
$vote_total = $vote_array[0];如果你想用mysql_num_rows计算票数,你必须选择所有的行。
发布于 2010-09-23 03:17:42
该查询确实只返回一行。您想要的是从查询中检索值:
$row = mysql_fetch_array($res);
$vote_total = $row[0];https://stackoverflow.com/questions/3772791
复制相似问题