public function menu() { if (superUser()) { $menuModel = D('Menu'); $menus = $menuModel->changPage('id,name,url,level,parent_id'); } else { $ids = savePermissionID(); if ($ids) { $str = implode(',', $ids); $sql = "select distinct m.id,m.name,m.url,m.level,m.parent_id from shop_menu as m join shop_menu_permission as mp on m.id = mp.menu_id where mp.permission_id in ({$str})"; $menus = M()->query($sql); } } $this->assign('menus', $menus); $this->display('menu'); }
public function checkLogin() { // session_start(); // $redis = new \Redis(); // $redis->connect('127.0.0.1', 6379); // $key = $redis->keys('*'); // du($redis->get($key[1])); // exit; if (IS_POST) { //>>先进行验证码的验证 /* $captcha = I('post.captcha'); $verify = new Verify(); if(!$verify->check($captcha)){ $this->error('验证码错误'); }*/ //>>1.接收请求参数; $username = I('post.username'); $password = I('post.password'); //>>2.通过用户名查询数据库看是否存在此用户名 $loginService = D('Login', 'Service'); //调用方法执行数据库查询 $result = $loginService->loginData($username, $password); if (is_array($result)) { //登录成功就保存用户名到session中 //把session的设置成函数 login($result); //等到url地址保存在session $resultUrl = $loginService->userPermisson($result['id']); //把保存到session中封装成一个函数 savePermissionURL(array_column($resultUrl, 'url')); savePermissionID(array_column($resultUrl, 'id')); //当remember存在的时候就保存 $remember = I('post.remember'); if ($remember) { //存在就保存数据到cookie $loginService->saveService($result['id']); } $this->success('登陆成功!', U('Index/index')); } else { $this->error($result); } } else { $this->display('login'); } }
public function menu() { //向首页添加菜单栏数据,先判断是不是超级管理员 if (isSuperUser()) { $menuModel = D('Menu'); $result = $menuModel->getList('id,url,name,parent_id,level'); } else { $permissionIds = savePermissionID(); // dump($permissionIds); if ($permissionIds) { $permissionIdsStr = implode($permissionIds, ','); $sql = "select distinct m.id,m.name,m.url,m.level,m.parent_id from menu as m join menu_permission as mp on m.id = mp.menu_id where mp.permission_id in ({$permissionIdsStr})"; // dump($sql); $result = M()->query($sql); // dump($result);exit; } } $this->assign('menus', $result); $this->display('menu'); }
public function index() { if (IS_POST) { //验证码验证 // $captcha = I('post.captcha'); // $verifyModel = new Verify(); // if ($verifyModel->check($captcha) === flase) { // $this->error('验证码错误!'); // } //验证用户名和密码 //>>1.接收请求参数 $username = I('post.username'); $password = I('post.password'); //>>2.再进行验证登陆 $loginService = D('Login', 'Service'); //根据用户名和密码进行验证 $result = $loginService->login($username, $password); if (is_array($result)) { //是数组, 表示用户信息 //登陆成功,将用户信息保存到session中 login($result); //需要将当前用户能够访问的url地址保存到session中 $permissions = $loginService->getPermissions($result['id']); savePermissionURL($permissions['urls']); savePermissionID($permissions['ids']); //完成自动登录信息的保存 $remember = I('post.remember'); if (!empty($remember)) { //保存用户信息,saveAutoLogin(传入用户ID) $loginService->saveAutoLogin($result['id']); } header('Content-Type: text/html;charset=utf-8'); $this->success('登陆成功!', U('Index/index')); } else { //如果不是数组, 就是错误信息 $this->error($result); } } else { $this->display('login'); } }
/** * 自动登录的方法 , 就是根据cookie中值进行登录 * 1. 登录失败: 返回false * 2. 登录成功: 返回true */ public function autoLogin() { //>>1.得到cookie中信息 $admin_id = cookie('admin_id'); $auto_key = cookie('auto_key'); //如果没有cookie的值就需要自动登录 if (empty($admin_id) || empty($auto_key)) { return false; } //>>2.根据cookie中的admin_id,查找是否有该用户 $adminModel = M('Admin'); $row = $adminModel->getById($admin_id); if ($row) { //>>3.如果有用户再比 加密后的auto_key if ($auto_key == md5($row['auto_key'] . $row['salt'])) { //登录成功 login($row); //将当前登陆信息保存到 session中 //根据用户的id 查询出当前用户的权限的url和id,保存到session中 $permissions = $this->getPermissions($row['id']); savePermissionURL($permissions['urls']); //将权限的url地址保存 savePermissionID($permissions['ids']); //将权限的id保存 return true; } else { return false; } } else { return false; } }
public function autoLogin() { //得到cookie的值 $admin_id = cookie('admin_id'); $auto_key = cookie('auto_key'); if (empty($admin_id) || empty($auto_key)) { return false; } //根据admin_id的值来判断的 $adminModel = D('Admin'); $row = $adminModel->getById($admin_id); if ($row === false) { return false; } $key = md5($row['atuo_key'] . $row['salt']); if ($auto_key == $key) { //存在就保存就根据当前的id把url和权限的id保存到seesion login($row); //等到url地址保存在session $resultUrl = $this->userPermisson($admin_id); //把保存到session中封装成一个函数 savePermissionURL(array_column($resultUrl, 'url')); savePermissionID(array_column($resultUrl, 'id')); return true; } else { return false; } }