我有一位经营在线拍卖网站的朋友。他目前在主页上有一个特色项目部分,他希望每X分钟循环一个项目。该网站运行了一个我尚未见过的MySQL数据库。
他正在使用的当前代码是一个庞大而冗长的Javascript代码,会导致各种错误。
项目必须按顺序循环,当它们结束时,返回并重复。
使用PHP的最佳方法是什么?
编辑:我的意思是从后端SQL角度来看。不是用户界面。由于 本
答案 0 :(得分:0)
假设您有一个单独的特色项目表(可能有一个引用主要项目表的项目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次调用数据库......可能有一种更有效的方法来实现此目的。