Php MySQL-Blog日志调度系统
我正在使用CodeIgniter创建一个博客帖子调度系统。我希望每天有10个帖子出现。在Php MySQL-Blog日志调度系统,php,mysql,codeigniter,blogs,Php,Mysql,Codeigniter,Blogs,我正在使用CodeIgniter创建一个博客帖子调度系统。我希望每天有10个帖子出现。在posts表中有一个名为scheduled_date的字段,我将从中获取小于或等于当前日期的帖子。当管理员用户向数据库中添加新记录时,我需要一条SQL语句,它可以帮助我计算数据库中最新日期的记录数。例如: // 9 records returned for the date 2011-01-01 $numbers_of_records == 9; if($numbers_of_records == 10){
posts
表中有一个名为scheduled_date
的字段,我将从中获取小于或等于当前日期的帖子。当管理员用户向数据库中添加新记录时,我需要一条SQL语句,它可以帮助我计算数据库中最新日期的记录数。例如:
// 9 records returned for the date 2011-01-01
$numbers_of_records == 9;
if($numbers_of_records == 10){
// inserts record with `scheduled_date`='2011-01-01'
}else{
// inserts record with the date latest date +1 day
}
//2011年1月1日返回的9条记录
$numbers_of_记录==9;
if($numbers\u of\u records==10){
//插入“计划日期”='2011-01-01'的记录
}否则{
//插入日期为最晚日期+1天的记录
}
我将如何有效地完成这项工作
谢谢这样就可以了。它简单有效
<?php
// It is very bad to have floating values, especially for settings
// it is good to use some sort of factory or settings class
$maxDailyPosts = (int) SettingsFactory::getSettings()->get('maxDailyPosts');
$date = '2011-01-01';
// Load # of post for data
$numberOfRecords = (int) getNumberOfPostPerDate($date);
// Figure out the interval for increment
$dayInterval = ($numberOfRecords >= $maxDailyPosts ) ? 1 : 0;
//
$query = "INSERT INTO tbl (publish_date, ...) VALUES (DATE_ADD('$date', INTERVAL $dayInterval DAY), ...)";
?>