部分核心实现代码如下:
/*登录时看数据库中是否产生过该用户的记录,如果有则表明已有用户登录,此时将该用户登录时产生的session_id与临时文件夹中的session_id值匹配,并将其删除*/
$dataa = $db->fetchNextObject($db->query("select * from otusers_admin where name = '".$username."'"));
if ($dataa->session_id != '') {
@exec("rm /tmp/$dataa->session_id");
}
session_start();
.........................
/*如果数据库中没有此用户的登录记录,则插入一条新的数据,如果有记录说明已经有用户登录,则更新已有数据*/
$str_sess = sess_.session_id();
$resultp = $db->query("select * from otusers_admin where name = '".$username."'");
$rows2 = $db->numRows($resultp);
if($rows2 == 0){
$db->query("insert into otusers_admin values('".$username."','".$datetime."','".$ipaddress."','".$str_sess."')");
}else {
$db->query("update otusers_admin set login_time='".$datetime."',session_id='".$str_sess."' where name = '".$username."'");
}