destoon 的登录过程,如何使用cookie来判断用户是否登录
2014-07-16 14:33
766 查看
第一部分是destoon 的登录过程
登录是使用member->login的函数来实现的login.inc.php
代码在login.inc.php这个文件中
member这个类在member.class.php中定义
如果登录成后,那么给用户设置cookie,使用的set_cookie函数是在include/global.func.php中实现
如果说用js来判断是否登录,可以通过cookie来取得相应的值是否为空
在这里说明一下cookie是有前缀的,所以推荐使用系统带的取得cookie的函数 get_cookie
系统中原自带的处理判断用户是否登录是使用的以下函数,在footer.htm中
show_task('{$destoon_task}');
经过编译后会转化成
<script type="text/javascript">
show_task('moduleid=1&html=index');
</script>
show_task函数在page.js中实现,有兴趣的话,可以看一下,返回的是一段js代码,js模板在template/chip/line.htm中
登录是使用member->login的函数来实现的login.inc.php
代码在login.inc.php这个文件中
if($MOD['passport'] == 'uc') include DT_ROOT.'/api/'.$MOD['passport'].'.inc.php'; //7 line $do = new member; //42 line $user = $do->login($username, $password, $cookietime);
member这个类在member.class.php中定义
function login($login_username, $login_password, $login_cookietime = 0, $admin = false) { global $DT_TIME, $DT_IP, $MOD, $MODULE, $L; ........................ $auth=encrypt($user['userid']."\t".$user['username']."\t".$user['groupid']."\t".$user['password']."\t".$user['admin'], md5(DT_KEY.$DT_IP)); set_cookie('auth', $auth, $cookietime); set_cookie('userid', $user['userid'], $cookietime); set_cookie('username', $user['username'], $DT_TIME + 86400*365); $this->db->query("UPDATE {$this->table_member} SET loginip='$DT_IP',logintime=$DT_TIME,logintimes=logintimes+1 WHERE userid=$userid"); return $user; }
如果登录成后,那么给用户设置cookie,使用的set_cookie函数是在include/global.func.php中实现
function set_cookie($var, $value = '', $time = 0) { global $CFG, $DT_TIME; $time = $time > 0 ? $time : (empty($value) ? $DT_TIME - 3600 : 0); $port = $_SERVER['SERVER_PORT'] == '443' ? 1 : 0; $var = $CFG['cookie_pre'].$var; return setcookie($var, $value, $time, $CFG['cookie_path'], $CFG['cookie_domain'], $port); }
如果说用js来判断是否登录,可以通过cookie来取得相应的值是否为空
在这里说明一下cookie是有前缀的,所以推荐使用系统带的取得cookie的函数 get_cookie
系统中原自带的处理判断用户是否登录是使用的以下函数,在footer.htm中
show_task('{$destoon_task}');
经过编译后会转化成
<script type="text/javascript">
show_task('moduleid=1&html=index');
</script>
show_task函数在page.js中实现,有兴趣的话,可以看一下,返回的是一段js代码,js模板在template/chip/line.htm中
相关文章推荐
- 登录判断 之 asp.net 使用内置票据来判断某用户是否有权限登录此网页
- 认识cookie 一般运用在判断用户是否登录和购物车
- Nodejs 如何解决每次向后台发起请求时判断用户是否处于登录状态?
- php 用户登录:如何判断用户是否登录
- 登录判断 之 asp.net 使用继承类的Session,判断用户是否登录
- react-navigation 如何判断用户是否登录跳转到登录页
- 使用COOKIE对像实现保存用户基本信息(结合Session),ASP.Net实现用户登录全过程
- java使用Cookie判断用户登录情况
- asp.net判断用户是否登录(SetAuthCookie相关问题)
- asp.net 使用内置票据来判断某用户是否有权限登录此网页
- 如何判断用户是否登录
- 如何使用H5判断登录页面手机号码长度是否正确和账号密码不能为空,从而减少对服务器的请求(注册也一样)
- discuz如何判断用户是否登录的
- 在主函数中提示用户输入用户名和密码。另写一方法来判断用户输入是否正确。该方法分别返回一个bool类型的登录结果和和一个string类型的登录信息。如登录成功,返回true及“登录成功”,若登录失败则返回false及“用户名错误”或“密码错误”(使用out参数)
- react-navigation 如何判断用户是否登录跳转到登录页的方法
- ecshop的模板文件中如何判断用户是否登录
- 如何解决每次向后台发起请求时判断用户是否处于登录状态?
- java使用Cookie判断用户登录情况的方法
- 判断是否为移动浏览器;判断是否支持滑动事件;通过手势来改变图片大小;使用手机GPS定位用户所在的城市;利用浏览器的cookie保存用户名;
- 利用Cookie保存用户登录信息,利用Filter来判断用户是否登录