所以这是我的cron.php,用于每24小时重置一次观看过的YouTube视频。如果ptime大于0,我试图达到每24小时扣除ptime的地方。也许我完全做错了,但任何建议或参考都会对我有所帮助。
<?
include("database.php");
if(!(@mysql_connect("$host","$user","$pass") && @mysql_select_db("$tablename"))) {?>No connection...<? }
mysql_query("UPDATE `cron` SET `time`= unix_timestamp(data_format(data_add( now(), interval 1 day), '%Y-%m-%d') WHERE `name`=`day`");
mysql_query("DELETE FROM `visits`");
mysql_query("DELETE FROM `surfed`");
mysql_query("DELETE FROM `viewed`");
mysql_query("UPDATE `premium` SET `ptime`=`ptime`- 1 WHERE `ptime` > '0'");
?>
这是我的cron数据表
SQL结果
主持人:localhost
数据库:view4coins
世代时间:2012年2月9日下午5点43分
生成者:phpMyAdmin 3.4.9 / MySQL 5.5.20-log
SQL查询:SELECT * FROM cron
LIMIT 0,30;
行:3
姓名时间
第1328836267号
小时1297720800
第1297900801周
这是我在codecanyon上购买的模板脚本,所有者不再提供支持
答案 0 :(得分:0)
我认为字段time
中包含unixtime,因此直接用mysql更新时间比手动计算更容易。
UPDATE `cron`
SET `time`= unix_timestamp(
date_format(date_add( now(), interval 1 hour), '%Y-%m-%d')
)
WHERE `name`='hour' and date_add( now(), interval 1 hour) <= time
UPDATE `cron`
SET `time`= unix_timestamp(
date_format(date_add( now(), interval 1 day), '%Y-%m-%d')
)
WHERE `name`='day' and date_add( now(), interval 1 day) <= time
UPDATE `cron`
SET `time`= unix_timestamp(
date_format(date_add( now(), interval 1 week), '%Y-%m-%d')
)
WHERE `name`='week' and date_add( now(), interval 1 week) <= time