奇怪的PHP关于取数据库数据条数的问题
if($ucMsg[0]>0){$result=mysql_query("select * from vip where userid='".$ucMsg[0]."';");
$rows=mysql_num_rows($result);
$myrows=mysql_fetch_array($result);
{
echo "<SCRIPT LANGUAGE='JavaScript'>";
echo "alert('select * from vip where userid=".$ucMsg[0]."');";
echo "alert('".$rows."');";
echo "</SCRIPT>";
}
}
满足if($ucMsg[0]>0)的条件,可以往下执行,为了证明$ucMsg[0]这个变量没有问题,我用echo "alert('select * from vip where userid=".$ucMsg[0]."');";输了一下,输出的userid为2,可见$ucMsgh[0]没问题,vip表里有对应的数据,这样的话$rows至少为1啊,但echo "alert('".$rows."');";这个语句输出的却是空的字符串。想了半天也想不明白到底是怎么回事?请教高手。 select * from vip where userid=$ucMsg[0]
不要加单引号..你这里应该是整数而不是字符串吧.
单独执行看下这个sql语句看有没有输出
select * from vip where userid= 2 不加单引号也不行,数据库执行select * from vip where userid= 2有输出的,所以才很郁闷。 从来都没有遇到过这样的情况,感觉很奇怪,我仔细检查了代码,没有问题,昨天就想了一晚上。 $myrows=mysql_fetch_array($result)[color=red];[/color]
-_!! 那个在这一段里没用 还没明白么..
这里不应该有 ; 号
你这里是语法错误
[code]
while($myrows=mysql_fetch_array($result))
{
echo "<SCRIPT LANGUAGE='JavaScript'>";
echo "alert('select * from vip where userid=".$ucMsg[0]."');";
echo "alert('".$rows."');";
echo "</SCRIPT>";
}
[/code]
不过这样会弹出 $rows 次
不明白要为什么要把总记录数写在这里面.
[[i] 本帖最后由 wuleying 于 2008-7-3 10:49 编辑 [/i]] 既然select * from vip where userid= 2有输出,所以$rows=mysql_num_rows($result);应该至少为1条记录,但echo "alert('".$rows."');";输出的却是空。。。。。。。真晕死了。 -_!! -_!! -_!! -_!! -_!! -_!! 哎。。。。。。。。。。。。。。。 在此谢过,身陷局中,没有看出,真是倍感惭愧。
[[i] 本帖最后由 cslijin05 于 2008-7-3 11:02 编辑 [/i]] 哈哈,简单的问题!
页:
[1]