1 /** 2 * 获取信息 3 * @param array $where 条件 4 * @return array 信息 5 */ 6 public function getWhereInfo($where) 7 { 8 return $this->table("__ADMIN_USER__ as A") //table方法指定操作的数据表,__ADMIN_USER__简化数据表名,后面的as表示设置admin_user别名为A 9 ->join('__ADMIN_GROUP__ as B ON A.group_id = B.group_id')//用于根据两个或多个表中的列之间的关系,从这些表中查询数据10 ->field('A.*,B.status as group_status,B.name as group_name,B.base_purview,B.menu_purview')//标识要返回或者操作的字段,可以用于查询和写入操作/11 ->where($where)12 ->find();13 }
1 /** 2 * 登录用户 3 * @param int $userId ID 4 * @return bool 登录状态 5 */ 6 public function setLogin($userId) 7 { 8 // 更新登录信息 9 $data = array(10 'user_id' => $userId,11 'last_login_time' => NOW_TIME,12 'last_login_ip' => get_client_ip(),//调用thinkphp内置函数获取IP地址13 );14 $this->save($data);//将用户的登陆信息记录下来以备安全监测15 //写入系统记录16 api('Admin','AdminLog','addLog','登录系统');17 //设置cookie18 $auth = array(19 'user_id' => $userId,20 );21 session('admin_user', $auth);22 session('admin_user_sign', data_auth_sign($auth));23 return true;24 }
这里将用户的IP地址和登陆时间记录下来了更安全。