前面几篇文章中,还有一点小问题。
如果用户打开一个新标签,那么还得输入账号密码才能登录,同时两个登录页面,这样用户体验会不爽。
另外,如果用户直接在新标签中输入后台地址,那么就可以直接登录。这种越权的行为也是一个漏洞,得解决。
所以,这篇文章就是这两块内容:1.用户在未登录情况下,不能直接进入后台页面。2.用户登录后,打开新页面,可以直接用session状态进入,不需要输入密码
好吧,今天很神奇,无论如何都无法上传图片,只能用文字表示了。奇怪的是连文字都无法复制粘贴进来了。。。好吧,又能上传成功了。。。今天不知道什么问题。趁现在能上传,赶快记录一下。
首先,在base.php中,编写下面代码
下面这幅图的效果也显示出来了,一开始我搞错了,还以为没显示效果
下面再去对照上面的方法,去各个控制器中进行设置
如果想进入主页,那么毫无疑问得先判断是否有登录资格(这是防止绕过登录页面的账号密码输入实现越权登录),根据用户浏览器中的sessionID来判断是否有资格。也就是说,只要用户进入后台,第一件事就是读取sessionID,只有从登录页面输入账号密码成功了,跳转到后台页面的用户才会被分配到sessionID,而这个sessionID实际上就是用户在数据库中的个人信息的ID。
所以,上面这幅图就去主页第一件事先判断用户有没有登录资格。然后才渲染index.html模板
最后,要做的一件事就是,去User.php的login方法中,判断用户是否有sessionID,如果有,就告诉他不用再输入密码了,可以直接登录。若没有,就登录
以上内容圆满结束。没有BUG。