这个循环如何循环4次?

时间:2012-12-14 22:24:41

标签: php mysql sql

我正在制作一个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"])
                        {

                        }
                }

            }
        } 

1 个答案:

答案 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"])
                        {

                        }
                }

            }
        } 

请注意:mysql扩展名为 DEPRECATED ,将来会被删除。而是使用mysqliPDO