我有一个关于狗品种的网站,其中有一个“每日狗”部分。我希望“每日狗”每天显示一次新狗(来自 mysql 数据库)。使用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 每天只更改一次。
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"));
作为 .php 文件,每天由 cron 作业运行一次,每天更新一次 $randomdog。但是,我怎么能将 $randomdog 传递到一个单独的页面来回显呢?
我之前在这里问过一个类似的问题,答案通常是“存储一个 unixtimestamp,一周后执行,当当前时间 == 时间 + 1 周时再次执行”。
用php不可能吗?它只在用户请求时执行,确定吗?这意味着“时间 + 1 周”变量不可能存储在某处。
无论如何,一定要纠正我。