MySQL while循环不会停止

Sam*_*Sam 2 php mysql while-loop

我最近创建了一个PHP/MySQL while循环,它根据我的参数获取数组.根据我所知道的,当没有更多行可以抓取时,它应该结束.我只是继续前进,直到我停止加载页面.

while($row = mysql_fetch_array(mysql_query("SELECT username,password,title,message FROM notifications WHERE dateset = '$date'"))){
    $test = new Boxcar($row['username'],$row['password']); 
    $test->send($row['title'],$row['message']);
}
Run Code Online (Sandbox Code Playgroud)

bum*_*box 8

尝试这样的情况很有可能每次进入while循环时都会重新运行内联查询

$result = mysql_query("SELECT username,password,title,message FROM notifications WHERE dateset = '$date'");

while($row = mysql_fetch_array($result)) {
    $test = new Boxcar($row['username'],$row['password']); 
    $test->send($row['title'],$row['message']);
}
Run Code Online (Sandbox Code Playgroud)

  • @Sam:原始失败的原因是因为每次循环返回到开始时,它再次调用该查询(作为比较的一部分),所以每次,你得到一个新的结果集并在开始时重新开始. .. (3认同)