while循环中的无限循环

时间:2014-09-11 14:48:51

标签: php mysql while-loop

while ($my_query = mysql_fetch_array(mysql_query("select table2.ctg_id from table1 INNER JOIN table2 ON table2.game_id = table1.id where table1.id = $id"))) 
{
    echo $my_query['data'];
}

当我在navicat上尝试此查询时,我接受;

2
3

但是在'.php'页面中,查询进入无限循环。

1 个答案:

答案 0 :(得分:11)

您在每个循环中重新运行查询。您需要保存查询结果,然后从每个循环中获取一个数组:

$result = mysql_query("select table2.ctg_id from table1 INNER JOIN table2 ON table2.game_id = table1.id where table1.id = $id");
while ($my_query = mysql_fetch_array($result)) {
  echo $my_query['data'];
}

也不推荐使用mysql_扩展名。别忘了尽快将项目更新到mysqli或PDO。