ああ。これが機能しない理由がわかりません:
2行しかないデータベースがあります。db 列の 1 つは、時間 + 1 時間を格納します。データベースにクエリを実行し、現在の時刻よりも古い時刻が格納されている各行について、メッセージを送信したいと思います。基本的に、メッセージが保存されてから 1 時間メッセージの送信が遅れるだけです。
何が起こるかというと、1 つの電子メールしか送信しないということです。「storedtime」の両方の値は、現在の時刻よりも古い (小さい) です。ただし、メッセージは 1 つしか送信されません。ここで一体何を見逃したのですか?
$query = "SELECT * FROM db";
$result=@mysql_query($query);
$num=@mysql_numrows($result);
$row=mysql_fetch_array($result);
$i = 0;
$time = time();
while($i < $num)
{
if(($row['storedtime']) <= $time)
{
mail("myemailaccount","Subject","Message here, etc.", $headers);
}
$i++;
}