更正:上边的
【其中第2步的数据库操作我是这么写的: 
SELECTTIME_TO_SEC(NOW())-TIME_TO_SEC(time_at)FROM`gbook`WHEREip_at='$ip'ANDuser_name='user1'ORDERBY`TIME_TO_SEC(NOW())-TIME_TO_SEC(time_at)`ASC】
 
这里的SQL语句为:
("SELECT TIME_TO_SEC( NOW( ) ) - TIME_TO_SEC( at_time ) FROM `counter` WHERE `name` = 'page1' AND `ip_addr` = '$ip_addr' ORDER BY `TIME_TO_SEC( NOW( ) ) - TIME_TO_SEC( at_time )` ASC"); 

解决方案 »

  1.   

    用time()或者mktime()等函数取得时间戳
      

  2.   

    你可以用SESSION+IP/COOKIE+IP来记录不同的操作,
    如果用COOKIE有些操作可以客房端就阻止;
    纯属个人观点
      

  3.   

    我个人比较倾向于 Siramizu(白水山言)  大哥所说的但是不知道函数的具体应用方法查手册也看的不是很明白不知道 Siramizu(白水山言)  可否将关键语句,帮忙补充一下?谢谢!!
      

  4.   

    把你存放时间的字段的值改为time()函数返回的结果
    初始化网站的时候最好用
    $timestamp = time();
    这样如果要同时插入多条语句可以保持时间一致
    $sql = "INSERT INTO yourtable SET ip='userip',lastime='$timestamp'";
    把ip,lastime替换成你相应的字段名$sql = "SELECT lastime FROM yourtable WHERE ip='$userip'";
    然后把数据库的结果和当前的$timestamp比较即可
      

  5.   

    I suggest you get the lasttime of users posted a topic and write it into session,and when the user post again,check the posttime and the lasttime in session .It is low efficiency and no need to query sql.
      

  6.   

    谢谢楼上几位,我现在把存储时间的at_time改成了TXT类型,
    终于可以用$acc_time = date("YmdHis");写入数据库了,时间类型为20060728212821
    现在的问题就是,如何在浏览者进站的时候,判断其IP最后登陆的时间与本次IP的差,用SQL查询实现。但是我写了好多SQL语句,就是不能判断。我现在的写法是:
    SELECT $acc_time - at_time FROM `counter` WHERE `name` = 'page1' AND `ip_addr` = '$ip_addr' ORDER BY `date("YmdHis") - int("at_time")` ASC$acc_time在前面已经赋值了【$acc_time = date("YmdHis");】
    at_time 为MYSQL数据库中的一个字段名 存储的是20060728212821这样的时间日期。
    请问如何写SQL可以用当前时间减去该IP存在数据库中的最后时间,让其最终得出一个差值?
    再次感谢!
      

  7.   

    谢谢楼上几位,我现在把存储时间的at_time改成了TXT类型,-------------------------------------
    set the column as int type,then use:$ltime = mktime();
    mysql_query("insert into tb (lasttime) values ($ltime)");to insert lasttime into database.and use:$do = mysql_query("select lasttime from tb where userid=$userid"); 
    $rs = mysql_fetch_object($do);
    $time = $nowtime - $rs->lasttime;
    if($time<=5){//less than or equal 5 seconds
       .....
    }
    else{
       ......
    }
      

  8.   

    the $nowtime above is equal to mktime():$time = mktime() - $rs->lasttime;