我有这段代码
$sql5 = "SELECT * FROM iptable
WHERE user_id = '$userid_c' AND ip = '$ip' LIMIT 0, 30 ";
$query5=mysql_query($sql5);
$row_ip_a = mysql_num_rows($query5);
当我从phpmyadmin使用它时,它返回了很好的结果但是当我从php使用它时它总是返回一行。
可能是什么原因?
答案 0 :(得分:0)
如果没有看到您的数据集,很难看出您是否获得了相同的结果。
假设当你把它放在PHPMyAdmin中时,你用手工值填写$userid_c
和$ip
?尝试插入这些手动值而不是上面的变量,看看是否有效(如果有,那么你的变量就会出现问题)。
答案 1 :(得分:0)
mysql_num_rows - 获取结果中的行数
<?php
$result = mysql_query("SELECT * FROM table1", $link);
$num_rows = mysql_num_rows($result);
echo "$num_rows Rows\n";?>
你需要这个: mysql_fetch_array - 将结果行作为关联数组,数字数组或两者获取
您的代码仅受影响的行数, 你需要来自选择查询的数据
因此您可以将mysql_fetch_array用作:
$result = mysql_query("SELECT id, name FROM mytable");
while ($row = mysql_fetch_array($result)) {
printf("ID: %s Name: %s", $row[0], $row[1]);
}