我正试图从我的数据库中选择一个可以持续一天(每日选择)的数据.我使用以下代码:
$query = 'SELECT * FROM table ORDER BY rand() LIMIT 1
但正如你所看到的那样,它只能从表中随机选择,每当我刷新页面时,它都会给我一个新的随机选择.如何让选秀权持续一整天?
提前谢谢< 3 我正在尝试这个:
$query = "SELECT * FROM table ORDER BY rand(" . date("Ymd") . ") LIMIT 1";
但是我收到以下错误:MysqL_fetch_assoc():提供的参数不是有效的MysqL结果资源.这是被破坏的部分:
$results = MysqL_query($query); while($line = MysqL_fetch_assoc($results))
所以……应该看起来像这样,对吧? (我的意思是,选择每日随机选择?)
$dailyPick = 'SELECT * FROM table ORDER BY rand() LIMIT 1'; $cacheKey = 'dailyPick'. date('dmY'); if($cache->has($cacheKey)) { $dailyPick = $cache->get($cacheKey); } else { // hit database $dailyPick = $cache->save($cacheKey); }
我现在正在尝试这个:
$dailyPick = 'SELECT * FROM table ORDER BY rand() LIMIT 1'; $cacheKey = 'dailyPick'. date('dmY'); if($cache->has($cacheKey)) { $dailyPick = $cache->get($cacheKey); } else { // hit database $dailyPick = $cache->save($cacheKey); }
但是,我错了,我在非对象上使用’has’函数.
如果您将兰特的SEED设置为每日更改的整数值,那么这将解决您的问题
$query = "SELECT * FROM table ORDER BY rand(" . date("Ymd") . ") LIMIT 1";
会做的伎俩.