请教,现在,写了一个每天纪录登陆次数的代码,是纪录60天里每一天的登陆次数,纪录一天的登陆次数的sql,如下:
<?
for($i=0;$i<Count($user_info);$i++){
    $sql="insert into net.BATCH values('".$user_info[$i]['CUSTOMER_CD']."','administrator','','1','0') ";
     $conn->Execute($sql);//insert oa_admin
$sql="select count(*)as count from ".$user_info[$i]['DB_NAME'].".ACCESS_LOG whereTO_DAYS(ACCESS_DATE) = TO_DAYS(now())-5 and APL_NAME='login' andACTION='LoginDo' and OPERATION='Login'";//取出5天前的登陆次数
          $res = $conn->GetRow($sql);
$sql="update net.USER_INFO set LOGIN_COUNT_5 = '".$res['count']."'where USER_LOGIN_ID = '".$user_info[$i]['CUSTOMER_CD']."'";//更新到相应的5字段LOGIN_COUNT_5
          $conn->Execute($sql);
}
?>
代码中LOGIN_COUNT_5是纪录登陆次数的字段,有60个这样的字段,分别是LOGIN_COUNT_1;LOGIN_COUNT_2;LOGIN_COUNT_3;。等等
代码中TO_DAYS(ACCESS_DATE) = TO_DAYS(now())-1是日期,TO_DAYS(now())-1代表1天前,依次类推:两天前TO_DAYS(now())-2,。。如何把上面的代码修改为执行1次,也就是如何将TO_DAYS(ACCESS_DATE) = TO_DAYS(now())-5中的5和LOGIN_COUNT_5做成变量,然后根据判断每天执行行一次上述代码,而不用每天执行60次

解决方案 »

  1.   

    程序员,还想没日没夜的干下去吗??最新项目:懂网络,零投入,不耽误正常工作,业余时间让你月赚2000!!!!!! 
    财富网址:www.dmdigo.cn
      

  2.   

    60个字段。
    简单的东西不要搞复杂了
    你不如记录一个用户id,记录一个日期比如2008-09-08这样子,登录的时候看一下表里面有这个id的这个日期没,有的话update登录次数+1,没有就insert次数为1