引用第8楼romeo1981于2006-08-24 15:56发表的“”:
那是你的时间没有设置对,把那个$j后面的时间设置为23:00:00阿,这这是服务器的时间,是不是服务的时间不对?
服务器时间误差也就一两分钟而已!我把代码发上来。你看看。。
<?
/**
自动发放灌水奖金插件,适用于PW3.0.1 PW4.3 PW4.3.2等各个版本
作者:aileenguan
http://www.mrguan.com更新修改: 来自马来西亚--MyForum论坛jesscgc更新于06-08-13
更新:直接读取数据库,解决缓存的问题!
**/
require_once("global.php");
$cachefile = "data/bbscache/ifsalary.php";
$j=date("Y-n-j"); //获取当前时间日期
$tt=date(Y年n月j);
$postdatc=strtotime("$j 23:00:00");//标志位
$timestamp=time();
//A»ODIA¼t’’½¨IA¼t
if(!file_exists($cachefile)){
$cc="<?\n";
$cc.="\$ifsend=0;\n";
$cc.="?>";
writeover($cachefile,$cc);
}
require_once($cachefile);
if($timestamp<$postdatc && $ifsend==1){
$cc="<?\n";
$cc.="\$ifsend=0;\n";
$cc.="?>";
writeover($cachefile,$cc);
}
//判断日期,如果过了今天,且奖金尚未发放.则开始发放程序.
if($timestamp>$postdatc && $ifsend==0){
$sendmoeny;
$query=$db->query("SELECT m.uid,m.username,md.todaypost FROM pw_members m LEFT JOIN pw_memberdata md USING(uid) WHERE md.lastpost>'$tdtime' ORDER BY md.todaypost DESC limit 0,5");
$adminlog="在{$tt}日,获得灌水奖金的名单如下:<br><br>";
$moneylevel=array(50,40,30,20,10); //设定不同排行获得的金钱等,如50为第一名所发奖金,40为第二名.
$rvrclevel=array(50,40,30,20,10); //设定不同排行获得的贡献值等,如50为第一名所发奖金,40为第二名.
$creditlevel=array(30,20,15,10,5); //设定不同排行获得的贡献值等,如30为第一名所发奖金,20为第二名.
$num=0;
while($members=$db->fetch_array($query)){
$memberid=$members['uid'];
$membername=$members['username'];
$db->update("update pw_memberdata set money=money+'$moneylevel[$num]' where uid='$memberid'"); //增加金钱+威望+贡献值
$num=$num+1;
$adminlog.="第{$num}名:{$membername}<br>奖励金钱:{$moneylevel[$num-1]}<br><br>";
$subject="第{$num}名的灌水奖金发放!"; //短信标题
$timestamp=time();
$sendmessage="由于您在{$tt}日所发的贴子获得了$db_bbsname灌水第{$num}名,奖励金钱{$moneylevel[$num-1]},希望您再接再厉,多多交流!";
$db->update("INSERT INTO pw_msg (touid,fromuid,username,type,ifnew,title,mdate,content) VALUES ('$memberid','','System','rebox','1','$subject','$timestamp','$sendmessage')");
$db->query("UPDATE pw_members SET newpm=1 where uid='$memberid '");
}
$query=$db->query("select uid from pw_members where groupid=3");
while($admins= $db->fetch_array($query)){
$adminid=$admins['uid'];
$subject="系统通知:{$tt}日的灌水奖金发放记录!";
$timestamp=time();
$sendmessage=$adminlog;
$db->update("INSERT INTO pw_msg (touid,fromuid,username,type,ifnew,title,mdate,content) VALUES ('$adminid','','System','rebox','1','$subject','$timestamp','$sendmessage')");
$db->query("UPDATE pw_members SET newpm=1 where uid='$adminid'");
}
$cc="<?\n";
$cc.="\$ifsend=1;\n";
$cc.="?>";
writeover($cachefile,$cc);
}
?>