我正在尝试设置一个Cron Job,它将按顺序选择一个有特色的视频。
例如,视频ID 1是当前的特色视频。再过一个星期就是ID 2了。然后我想加载视频3-18在那之后。
这是可能的使用活动记录或MySQL语句?
这是一个很难解释的问题,所以如果你需要更多的信息,请评论,我会回复你。
感谢。
我同意@Daan的评论。
在数据库中添加一个新列(current_featured_id
),它可以是TINYINT
,默认值为0。如果视频有特色,current_featured_id
列的行将有一个1。
就实际的cron作业而言,在crontab中添加一个命令以每周运行一次该函数* 0 * * 0 featured_vid
(每周日午夜运行)
function featured_vid() {
//get the current featured id
$featured_id = $this->db->select('video_id')
->from('table_name')
->where('current_featured_id',1)
->get()->row()->video_id;
$new_featured_id = $featured_id+1;
$update_featured = array(
array(
'video_id' => $featured_id,
'current_featured_id' => 0
),
array(
'video_id' => $new_featured_id,
'current_featured_id' => 1
),
);
//update your db
$this->db->update_batch('table_name', $update_featured, 'video_id');
}