想设计一个考勤系统,后台管理员众多,想对每一位管理员每天是否登陆做记录,并由他们的出勤率决定工资。
     设计了一个这样的表做记录,admin_login每登陆一次记录一条信息。有下面几个字段
     id   user_id  user_name    login_time    address
    在模板页面输出时出现了问题,想实现这样的效果
    用户名     8-1       8- 2        ……       8 -31
    aaaaa    08:20     未登陆     ……    10:20
    bbbbb   08:20     未登陆     ……      08:20 
    cccccc   08:20      08:20   ……  11:20      
  因为在表中一个用户名出现多次,统计时要将用户名要循环得出来,还要将用户的每一条登陆信息显示出来,双重循环,在程序编写上我无法实现,哪位能帮帮忙,或者换一个别的思路来实现这样的功能。

解决方案 »

  1.   

    日期   用戶    登陸時間  
    8-1   aaa    08:20      10:20     
    8-1   bbb    08:30      10:50
    8-2 
    第一個循環日期
    然後根據日期查找登陸日誌並按用戶排序,循環數據集並判斷記錄是否和上一個用戶相同如果不同則換行
      

  2.   

    for ($i=1;$i<31;$i++)
    {
       if ($i<10)
       $date="2009-08-0".$i;
       else 
       $date="2009-08-".$i;   $sql="select * from admin_login where login_time>='".$date." 00:00:00' and login_time<'".$date." 23:59:59' orderb by user_name";
       $result=mysql_query($sql);  
       $oldname='';
       while($row=mysql_fetach_array($result))
       {
             ................
       }  
    }