PHP / SQL循环项每隔x分钟

时间:2009-11-23 04:51:48

标签: php sql timer cycle countdown

我有一位经营在线拍卖网站的朋友。他目前在主页上有一个特色项目部分,他希望每X分钟循环一个项目。该网站运行了一个我尚未见过的MySQL数据库。

他正在使用的当前代码是一个庞大而冗长的Javascript代码,会导致各种错误。

项目必须按顺序循环,当它们结束时,返回并重复。

使用PHP的最佳方法是什么?

编辑:我的意思是从后端SQL角度来看。不是用户界面。

由于 本

1 个答案:

答案 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次调用数据库......可能有一种更有效的方法来实现此目的。