热门标签 | HotTags
当前位置:  开发笔记 > 编程语言 > 正文

phpajaxsession丢失_PHP开发常见功能实现流程

php中文网最新课程每日17点准时技术干货分享一、pc端网站登录1、获取并过滤用户提交的用户名和密码以及验证码2、验证用户提交验证码和session中的验证码是否一致3、验证用户名
b7c7d98a984fd0557028dfe2676a7f96.png

php中文网最新课程

每日17点准时技术干货分享

bd86522a4d54088db7462b7ee8196d67.png

b2f27f79a0982a9a8e380ba78db2a1f9.gif

一、pc端网站登录

1、获取并过滤用户提交的用户名和密码以及验证码

2、验证用户提交验证码和session中的验证码是否一致

3、验证用户名是否存在

4、根据用户名获取密码,并校验密码是否一致

5、密码一致,则登录成功,跳转到对应的首页

图示:

68c3f8afb6fa59ea8ed226513061b3a1.png

二、pc端网站注册

1、ajax获取用户要注册的用户名和手机号,并验证是否被占用,如果已经被占用,给出相应提示

2、根据生成的随机数字组合连接短信平台发送验证码

3、删除本号码下验证码缓存

4、添加本号码下验证码缓存

5、Ajax获取两次密码并进行比对,如果不一致,作出相应提示

6、验证验证码是否一致

7、如果密码一致,则执行注册,并跳转到首页,删除当前手机号验证码缓存

图示:

677504e43789a0ed9d96f04fcd7efdf0.png

三、第三方登录(qq,微信,微博,coding.net,百度,github等)

各个第三方登录平台流程类似,这里介绍qq第三方登录

1、在qq开发者平台获取到app_id , app_key , 回调地址

2、拼接请求url

3、请求时携带state状态值,用于防范csrf攻击,回调页面会原样返回

4、处理回调,验证返回的state值和本地state值是否一致

5、如果state值一致,则再根据返回的code值获取accsess_token

6、根据accsess_token获取openid和用户资料(在第三方平台上,每一个qq号对应一个唯一的openid)

7、根据openid执行本地登录注册操作

比如(根据openid判断是否为网站新用户,如果是新用户,则执行网站内部的注册程序,并生成一个对应的uid,然后将uid写入session或COOKIE,实现保持会话。

如果openid已经存在,则执行登录操作,直接将openid对应的uid写入session或COOKIE,保持会话)。

350b3ae5e502d715de6a9e679e9caef9.png

-END-




推荐阅读
  • 本文介绍了H5游戏性能优化和调试技巧,包括从问题表象出发进行优化、排除外部问题导致的卡顿、帧率设定、减少drawcall的方法、UI优化和图集渲染等八个理念。对于游戏程序员来说,解决游戏性能问题是一个关键的任务,本文提供了一些有用的参考价值。摘要长度为183字。 ... [详细]
  • 工作经验谈之-让百度地图API调用数据库内容 及详解
    这段时间,所在项目中要用到的一个模块,就是让数据库中的内容在百度地图上展现出来,如经纬度。主要实现以下几点功能:1.读取数据库中的经纬度值在百度上标注出来。2.点击标注弹出对应信息。3 ... [详细]
  • 一、Struts2是一个基于MVC设计模式的Web应用框架在MVC设计模式中,Struts2作为控制器(Controller)来建立模型与视图的数据交互。Struts2优点1、实现 ... [详细]
  • 关于extjs开发实战pdf的信息
    本文目录一览:1、extjs实用开发指南2、本 ... [详细]
  • 1.淘宝模拟登录2.天猫商品数据爬虫3.爬取淘宝我已购买的宝贝数据4.每天不同时间段通过微信发消息提醒女友5.爬取5K分辨率超清唯美壁纸6.爬取豆瓣排行榜电影数据(含GUI界面版) ... [详细]
  • 本文介绍了Redis的基础数据结构string的应用场景,并以面试的形式进行问答讲解,帮助读者更好地理解和应用Redis。同时,描述了一位面试者的心理状态和面试官的行为。 ... [详细]
  • “你永远都不知道明天和‘公司的意外’哪个先来。”疫情期间,这是我们最战战兢兢的心情。但是显然,有些人体会不了。这份行业数据,让笔者“柠檬” ... [详细]
  • 小程序自动授权和手动接入的方式及操作步骤
    本文介绍了小程序支持的两种接入方式:自动授权和手动接入,并详细说明了它们的操作步骤。同时还介绍了如何在两种方式之间切换,以及手动接入后如何下载代码包和提交审核。 ... [详细]
  • 华为鸿蒙系统官网2.0报名方法及适用设备
    本文介绍了华为鸿蒙系统官网2.0报名的适用设备、报名方法以及三种方式,包括在应用商店下载开发者联盟app、在官网中进行报名、在微信公众号中申请体验HarmonyOS 2.0 手机开发者Beta版本。同时提醒错过测试机会的用户可以等待后续的正式版发布。 ... [详细]
  • 本文介绍了Composer依赖管理的重要性及使用方法。对于现代语言而言,包管理器是标配,而Composer作为PHP的包管理器,解决了PEAR的问题,并且使用简单,方便提交自己的包。文章还提到了使用Composer能够避免各种include的问题,避免命名空间冲突,并且能够方便地安装升级扩展包。 ... [详细]
  • 如何实现JDK版本的切换功能,解决开发环境冲突问题
    本文介绍了在开发过程中遇到JDK版本冲突的情况,以及如何通过修改环境变量实现JDK版本的切换功能,解决开发环境冲突的问题。通过合理的切换环境,可以更好地进行项目开发。同时,提醒读者注意不仅限于1.7和1.8版本的转换,还要适应不同项目和个人开发习惯的需求。 ... [详细]
  • Centos下安装memcached+memcached教程
    本文介绍了在Centos下安装memcached和使用memcached的教程,详细解释了memcached的工作原理,包括缓存数据和对象、减少数据库读取次数、提高网站速度等。同时,还对memcached的快速和高效率进行了解释,与传统的文件型数据库相比,memcached作为一个内存型数据库,具有更高的读取速度。 ... [详细]
  • 熟练掌握Spring Cloud,终于成为Java工程师的面试门槛 ... [详细]
  • Java实现验证码的制作
    验证码概述为什么使用验证码?验证码(CAPTCHA)是一种全自动程序。主要是为了区分“进行操作的是不是人”。如果没有验证码机制,将会导致以下的问题:对特定网站不断进行登录,破解密码 ... [详细]
  • 开发笔记:GD库的基本信息,图像的旋转水印缩略图验证码,以及图像类的封装
    篇首语:本文由编程笔记#小编为大家整理,主要介绍了GD库的基本信息,图像的旋转水印缩略图验证码,以及图像类的封装相关的知识,希望对你有一定的参考价值。GD ... [详细]
author-avatar
月芽2502915393
这个家伙很懒,什么也没留下!
PHP1.CN | 中国最专业的PHP中文社区 | DevBox开发工具箱 | json解析格式化 |PHP资讯 | PHP教程 | 数据库技术 | 服务器技术 | 前端开发技术 | PHP框架 | 开发工具 | 在线工具
Copyright © 1998 - 2020 PHP1.CN. All Rights Reserved | 京公网安备 11010802041100号 | 京ICP备19059560号-4 | PHP1.CN 第一PHP社区 版权所有