私は、「今日の犬」セクションがある犬種に関するウェブサイトを持っています。'今日の犬' で (mysql データベースから) 1 日に 1 回新しい犬を表示したいと思います。php と mysql を使用すると、操作は実際には非常に簡単になると思います。
$connection = mysqli_connect("localhost", "username", "password");
$randomdog = mysqli_query($connection, "SELECT * FROM dogtable WHERE id >= RAND() * (SELECT MAX(id) FROM dogtable) LIMIT 1"));
echo $randomdog
もちろん、これにより、ページがリロードされるたびにランダムな犬が表示されます。$randomdog を 1 日 1 回だけ変更したい。
cronジョブが答えになるでしょうか? これまでに実装したことはありませんが、自分のサイトには cpanel がインストールされているので、あまり面倒ではないと思います。
cronジョブを使用する場合、保存すると仮定しています
$connection = mysqli_connect("localhost", "username", "password");
$randomdog = mysqli_query($connection, "SELECT * FROM dogtable WHERE id >= RAND() * (SELECT MAX(id) FROM dogtable) LIMIT 1"));
cron ジョブによって 1 日 1 回実行される .php ファイルとして、1 日 1 回 $randomdog を更新します。しかし、どうすれば $randomdog を別のページに渡してエコーさせることができるでしょうか?
以前にここで同様の質問をしたことがありますが、答えは通常、「unixtimestamp を 1 週間で保存し、現在の時刻 == 時間 + 1 週間のときに再度実行する」という行に沿っています。
それはphpでは不可能ですか?ユーザーが要求したときにのみ実行されますよね?つまり、「時間 + 1 週間」変数をどこかに保存することはできません。
とにかく、私を訂正してください。