需求:用户在后台添加文章时可以选择发布的方式:立即发布,指定时间发布。
分析:
1、数据库表设计:
ctime[int 11] 发布时间
status[tiny int 2] 发布状态,0-禁用 1-正常在用、显示 2-计划发布
2、php方法:
用户使用立即发布,则存储时status=1,前台显示只要查到status=1的就可以直接显示了
用户选择定时发布,则储存时status=2,此时前台是不显示的
写另外一个task.php文件,去表中查status=2的记录,判断ctime和当前时间,当ctime大于当前时间时,就将记录的status设置为1
3、在linux服务器上新建一个定时任务
这个定时任务每隔一段时间就去执行task.php。
假设我们每分钟去执行下文件,使用crontab来设定一个每分钟执行的任务,关于crontab使用方法,自行百度“linux crontab”
编辑系统的定时任务:
crontab -e<span style="font-family: Arial, Helvetica, sans-serif; background-color: rgb(255, 255, 255);"> </span>
*/1 * * * * curl http://www.test.com/task.php
使用crontab -l 可以查看任务列表
注意:!!!!!!!!!!!!!!!!!!
如果连接中带有参数,如:http://www.baidu.com/index.php?m=test&=test
请转义为:http://www.baidu.com/index.php?m=test\&=test
对!一定要加上反斜杠