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 相关文章推荐
MySQL中create table语句的基本语法是
Jan 15 PHP
php AJAX实例根据邮编自动完成地址信息
Nov 23 PHP
PHP源码之 ext/mysql扩展部分
Jul 17 PHP
PHP字符串处理的10个简单方法
Jun 30 PHP
QQ登录 PHP OAuth示例代码
Jul 20 PHP
codeigniter上传图片不能正确识别图片类型问题解决方法
Jul 25 PHP
PHP+FastCGI+Nginx配置PHP运行环境
Aug 07 PHP
四个PHP非常实用的功能
Sep 29 PHP
Yii使用Captcha验证码的方法
Dec 28 PHP
php array_map使用自定义的函数处理数组中的每个值
Oct 26 PHP
thinkPHP5实现数据库添加内容的方法
Oct 25 PHP
PHP实用小技巧之调用录像的方法
Dec 05 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 Squid中可缓存的动态网页设计
2008/09/17 PHP
PHP仿博客园 个人博客(1) 数据库与界面设计
2013/07/05 PHP
laravel5.1 ajax post 传值_token示例
2019/10/24 PHP
JavaScript 在各个浏览器中执行的耐性
2009/04/06 Javascript
js获取RadioButtonList的Value/Text及选中值等信息实现代码
2013/03/05 Javascript
Ajax异步提交表单数据的说明及方法实例
2013/06/22 Javascript
JS命名空间的另一种实现
2013/08/09 Javascript
jquery中focus()函数实现当对象获得焦点后自动把光标移到内容最后
2013/09/29 Javascript
js日期、星座的级联显示代码
2014/01/23 Javascript
js实现格式化金额,字符,时间的方法
2015/02/26 Javascript
Jquery和BigFileUpload实现大文件上传及进度条显示
2016/06/27 Javascript
Bootstrap 3的box-sizing样式导致UEditor控件的图片无法正常缩放的解决方案
2016/09/15 Javascript
使用base64对图片的二进制进行编码并用ajax进行显示
2017/01/03 Javascript
SpringMVC+bootstrap table实例详解
2017/06/02 Javascript
Node.js模块全局安装路径配置方法
2018/05/17 Javascript
jQuery阻止事件冒泡实例分析
2018/07/03 jQuery
javascript中的this作用域详解
2019/07/15 Javascript
微信h5静默和非静默授权获取用户openId的方法和步骤
2020/06/08 Javascript
python实现排序算法
2014/02/14 Python
python根据经纬度计算距离示例
2014/02/16 Python
Python中的面向对象编程详解(下)
2015/04/13 Python
详解Python中with语句的用法
2015/04/15 Python
在Django的上下文中设置变量的方法
2015/07/20 Python
Python实现的多叉树寻找最短路径算法示例
2018/07/30 Python
python制作图片缩略图
2019/04/30 Python
python tkinter canvas 显示图片的示例
2019/06/13 Python
Python hashlib模块加密过程解析
2019/11/05 Python
日本PLST在线商店:日本时尚杂志刊载的人气服装
2016/12/10 全球购物
加拿大约会网站:EliteSingles.ca
2018/01/12 全球购物
Java如何格式化日期
2012/08/07 面试题
董事长职责范文
2013/11/08 职场文书
工业自动化毕业生自荐信范文
2014/01/04 职场文书
庆元旦广播稿
2014/02/10 职场文书
反腐倡廉标语
2014/06/24 职场文书
不尊敬老师的检讨书
2014/12/21 职场文书
《秋思》教学反思
2016/02/23 职场文书