解决思路:
首先在做登录是,必须要了解的是客户端的cookie和服务端的session,登录后,不仅要保存服务端的session,还要保存浏览器即客户端的cookie,检测登录时,必须session和cookie的相同key的value值相同,才可验证是否登录。
通过刚才的思路,我们有如下操作:
1、登录界面代码编写;(自己写吧,这里不麻烦写了)
2、点击登录之后的PHP代码逻辑编写
特别注意的是,当登录用户名和密码以及验证码验证通过后,需要些如服务端session:例如
$se = md5($admin_info['id'].$admin_info['user_name'].time()); Session::set('yebao_admin', [ 'admin' => [ 'admin_id' => $admin_info['id'], 'user_name' => $admin_info['user_name'], ], 'is_login' => true, 'auth' => $se, ]);
$se :用户ID+用户名+时间的MD5加密字符串,编写浏览器cookie是也要用到这个字符串
$admin_info:用户信息
然后编写浏览器cookie
setcookie("auth", $se,time()+3600,"/");
记住,setcookie时,一定要注意加上第三个参数值 “ "/" ”,做到全局更换,不然浏览器认为只在当前页面设置了cookie,而不是全部页面。
有关注意事项,下图中已用红框标记:
推荐教程:PHP视频教程
以上是PHP登录怎么写安全的详细内容。更多信息请关注PHP中文网其他相关文章!