我正在制作一个PHP来检查朋友关系表中的朋友ID,然后返回朋友的信息。 问题是,第一个循环循环2次,这是正确的,当我检查第二个循环的计数值时,我发现它等于4,这怎么会发生,第二个表有4行?
以下是代码:
while ($rowres = mysql_fetch_array($listres))
{
if ($_GET["ID"] == $rowres["ID"])
{
while ($row = mysql_fetch_array($result))
{
$count++;
if ($rowres["FID"] == $row["ID"])
{
}
}
}
}
答案 0 :(得分:2)
内部循环将遍历结果只有一个循环,因为在循环到$ result结果的最后一个元素后,结果将指向最后一个元素,这里最简单的方法可能是重置指针到顶部:
while ($rowres = mysql_fetch_array($listres))
{
if ($_GET["ID"] == $rowres["ID"])
{
mysql_data_seek($result,0); //<-HERE
while ($row = mysql_fetch_array($result))
{
$count++;
if ($rowres["FID"] == $row["ID"])
{
}
}
}
}