唠叨大哥,具体您看如果我做一个在线人数统计的话。
$now_time=date("Y-m-d H:i:s");
$del_time = ($now_time - $update_time);
这个$updata_time是预先设好的,一段时间长我设的是300s
就是$update_time=300
这个预设时间的格式怎么设啊,我这样好象不行。

解决方案 »

  1.   

    我用$now_time=getdate()试了一下,它都返回array这个数,插入数据库里面Lasttime(datetime类型)的时候显示
    message: 从字符串转换为 datetime 时发生语法错误
    唠叨大,应该怎么搞才对啊。付我在线统计的程序。<? include ("fandip.php");?>
    <? include ("const.php");?>
    <? include("dbconf.inc"); ?><?php 
    $now_time=getdate();
    echo $now_time;
    //在线用户处理
    if (isset($ip)) //如果session写了,那么用户已经登陆
    {
    $result = mssql_query("SELECT * FROM aliang_online WHERE ip  = '$ip' ") or die($die_msg."用户有没有写入在线列表");
    //查询看看用户有没有写入在线列表
    $num = mssql_num_rows($result); if ($num != 0) //如果已经写入了在线列表,就更新最后在线时间和状态
    { //$now_time是自定义的一个常量,代表现在时间的时间戳,该常量在const.php中设置
              mssql_query("UPDATE aliang_online SET LastTime = '$now_time',UserState = 1 WHERE ip = '$ip' ") or die($die_msg."如果写了,那就更新时间");

    }
    else //如果用户没有在在线列表,那么就把该用户写入在线用户列表
    {
    //mssql_query("INSERT INTO aliang_online SET  ip = '$ip' , LoginTime = $now_time , LastTime = $now_time , UserState = 1 ") or die($die_msg."如果没有写,那就写");
    mssql_query("INSERT INTO aliang_online (ip ,LoginTime, LastTime,UserState)  Values ('$ip','$now_time','$now_time',1) ") or die($die_msg."如果没有写,那就写");
    }
    } ?>
    <?php
    $del_time = ($now_time - $update_time);
    //删除一段时间没有动作的用户
    //删除一个在线用户的时间是现在时间减去更新时间,$update_time是个常量,从const.php中设置//从数据库中删除$update_time时间内没有动作的访客
    mssql_query("DELETE FROM aliang_online WHERE LastTime < $del_time ")
    or die($die_msg."删除一段时间没动作的用户");//更新一段时间没有动作的会员在线状态为0
    mssql_query("UPDATE aliang_online SET UserState = 0 WHERE LastTime < $del_time  ")
    or die($die_msg."更新注册会员的在线状态为0");
    $strSQL="select *  from  aliang_online WHERE  UserState = 1";
    $result=mssql_query($strSQL);
    $total = mssql_num_rows($result);
     echo  "共有 $total 人在网上";
    ?>
    const.php
    <?
    $update_time=500;
    ?>
      

  2.   

    fandip.php
    <? session_start(); 
    $ip= $_ENV["REMOTE_ADDR"];
    session_register("$ip");
    //$_SESSION['ip']= $REMOTE_ADDR;
    //$ip=$_SESSION['ip'];
    echo  $ip;?>
      

  3.   

    就计算session或者cookie的值可以吗。设定一个session过期的时间如何,还是想在数据库里面记录什么东西吗?