php+ajax登录跳转登录实现思路


Posted in PHP onJuly 31, 2016

当我们的用户进行系统登录时,用户名和密码的验证都是后端验证的。而且,用户登录状态也是要后端设置的,查询数据库后,用户名和密码正确,则在session中存储一个uuid,每个页面需要根据登录状态判断展示相应的内容时,则判断是否有uuid这个session,且uuid不为空。比如头部的登录按钮,在未登录状态是显示登录按钮,在登录后显示用户名和头像,这些都是判断是否有uuid这个值(具体实现里,相对来说更复杂一些)。

我们再来理下这个步骤:

  1. 向后端ajax发送用户名和密码
  2. 后端接收到用户名和密码后,查询数据库
  3. 若查询失败,则返回一个json数据,如:{"status":"-1", msg:"用户名或密码不正确"}
  4. 若查询成功,则在session中存储一个值,比如uuid,然后向前端返回一个json,比如:{"status":"0", msg:"success"}
  5. 前端js接收到返回的数据后,判断status的值,若status==0,则使用window.location.href进行跳转;其他的状态码都是登录失败,清空密码框,让用户重新输入

比如登录成功跳转到首页,首页里的php或java,需要判断session里是否有uuid

<nav>
  <?php if(isset($_SESSION['uuid']) && !empty($_SESSION['uuid'])):; ?>
    <!-- 若存在uuid,则不为空,则表示已经登录 -->
    <a href="#">蚊子</a>
  <?php else ?>
    <!-- 没有登录 -->
    <input type="button" value="登录" />
  <?php endif; ?>
</nav>
PHP 相关文章推荐
php 前一天或后一天的日期
Jun 28 PHP
PHP print类函数使用总结
Jun 25 PHP
PHP 数组基础知识小结
Aug 20 PHP
介绍一些PHP判断变量的函数
Apr 24 PHP
PHP以及MYSQL日期比较方法
Nov 29 PHP
PHP获取访问页面HTTP状态码的实现代码
Nov 03 PHP
CI框架数据库查询缓存优化的方法
Nov 21 PHP
PHP基于自定义类随机生成姓名的方法示例
Aug 05 PHP
浅析PHP开发规范
Feb 05 PHP
PHP合并两个或多个数组的方法
Jan 20 PHP
php探针不显示内存解决方法
Sep 17 PHP
PHP如何通过date() 函数格式化显示时间
Nov 13 PHP
nginx下安装php7+php5
Jul 31 #PHP
header与缓冲区之间的深层次分析
Jul 30 #PHP
laravel学习教程之关联模型
Jul 30 #PHP
laravel学习教程之存取器
Jul 30 #PHP
thinkphp表单上传文件并将文件路径保存到数据库中
Jul 28 #PHP
thinkphp验证码的实现(form、ajax实现验证)
Jul 28 #PHP
Thinkphp3.2.3分页使用实例解析
Jul 28 #PHP
You might like
php使用CutyCapt实现网页截图保存的方法
2016/10/03 PHP
php将字符串转换为数组实例讲解
2020/05/05 PHP
js关闭浏览器窗口及检查浏览器关闭事件
2013/09/03 Javascript
js操作输入框提示信息且响应鼠标事件
2014/03/25 Javascript
使用jQuery获取data-的自定义属性
2015/11/10 Javascript
JavaScript小技巧整理
2015/12/30 Javascript
Struts2+jquery.form.js实现图片与文件上传的方法
2016/05/05 Javascript
AngularJS实现按钮提示与点击变色效果
2016/09/07 Javascript
js获取腾讯视频ID的方法
2016/10/03 Javascript
vue filters的使用详解
2018/06/11 Javascript
Vue+Mock.js模拟登录和表格的增删改查功能
2018/07/26 Javascript
JavaScript禁止右击保存图片,禁止拖拽图片的实现代码
2020/04/28 Javascript
vue-cli或vue项目利用HBuilder打包成移动端app操作
2020/07/29 Javascript
python网络编程学习笔记(七):HTML和XHTML解析(HTMLParser、BeautifulSoup)
2014/06/09 Python
Python实现的一个找零钱的小程序代码分享
2014/08/25 Python
django实现分页的方法
2015/05/26 Python
python 线程的暂停, 恢复, 退出详解及实例
2016/12/06 Python
python select.select模块通信全过程解析
2017/09/20 Python
python判断计算机是否有网络连接的实例
2018/12/15 Python
利用Django提供的ModelForm增删改数据的方法
2019/01/06 Python
python使用PIL实现多张图片垂直合并
2019/01/15 Python
Django 反向生成url实例详解
2019/07/30 Python
Python操作SQLite数据库过程解析
2019/09/02 Python
py-charm延长试用期限实例
2019/12/22 Python
tensorflow生成多个tfrecord文件实例
2020/02/17 Python
python3.6中anaconda安装sklearn踩坑实录
2020/07/28 Python
深入理解Python变量的数据类型和存储
2021/02/01 Python
HTML5 离线应用之打造零请求、无流量网站的解决方法
2013/04/25 HTML / CSS
有abstract方法的类一定要用abstract修饰吗
2016/03/14 面试题
信息技术培训感言
2014/03/06 职场文书
单位工作证明书格式
2014/10/04 职场文书
婚礼答谢词
2015/01/04 职场文书
三潭印月的导游词
2015/02/12 职场文书
泰坦尼克号观后感
2015/06/04 职场文书
Python办公自动化解决world文件批量转换
2021/09/15 Python
python中的sys模块和os模块
2022/03/20 Python