[英]PHP/SQL Cycle items every x minutes
我有一个经营在线拍卖网站的朋友。 他目前在主页上有一个特色项目部分,他希望每X分钟循环一次项目。 该网站运行的是我实际上尚未见过的MySQL数据库。
他正在使用的当前代码是一个大而又混乱的Javascript代码,它会导致各种错误。
这些物品必须按顺序循环,当它们到达终点时,返回并再次重复。
使用PHP进行此操作的最佳方法是什么?
编辑:我的意思是从后端SQL的角度来看。 不是UI。
谢谢本
假设您为特色商品有一个单独的表(可能有一个商品ID引用了主商品表,也许还有其他信息)...在此表中,添加一个last_featured
列来表示商品的最后显示时间。 从那里,您可以操纵查询以获取特色项目的轮换列表。
它可能看起来像这样(作为PHP和MYSQL之间奇怪的伪代码混合):
// select the most recent item in the list, considered the current item
$item = SELECT * FROM featured_items ORDER BY last_featured DESC LIMIT 1;
if ($item['last_featured'] > X_minutes_ago) {
// select the oldest item in the list, based on when it was last featured
$item = SELECT * FROM featured_items ORDER BY last_featured ASC LIMIT 1;
// update the selected item so it shows as the current item next request
UPDATE featured_items SET last_featured=NOW() WHERE item_id = $item['item_id'];
}
请注意,这需要对数据库的3次调用...可能有一种更有效的方法来完成此操作。
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.