繁体   English   中英

每隔x分钟PHP / SQL循环项目

[英]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.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM