PHP开发常见功能实现流程

一、pc端网站登录

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

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

3、验证用户名是否存在

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

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

图示:

 

二、pc端网站注册

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

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

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

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

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

6、验证验证码是否一致

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

 

图示:

 

 

三、第三方登录(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执行本地登录注册操作

可参考https://blog.csdn.net/xiaoxian8023/article/details/38114921

注:官方参考文档点击这里

 

 

四、支付流程(第三方支付)

1、用户将商品加入购物车或立即购买

2、在购物车进行结算或者立即购买时,获取商品数、总价格,携带参数跳转到确认订单页面(包括地址,姓名,商品数,价钱,支付方式等)

3、将订单信息写入数据库,并跳转到订单创建成功页面

4、用户点击支付,确认支付请求时,后端根据订单信息拼接第三方支付请求url ,并进行请求,跳转到第三方支付页面

5、用户登录第三方账户,并进行支付

6、用户支付成功后,跳转到支付成功页面,然后跳转到同步通知页面(请求第三方支付时传入的return_url)

6、商城网站接收到支付异步通知后(notify_url)根据验证规则验证信息的有效性,并作出相应的更改操作(例:有效则更改订单为已付款状态,无效则记录非法请求信息)

详细流程:

退款和关闭订单类似,详细请查看官方文档 

猜你喜欢

转载自blog.csdn.net/m_nanle_xiaobudiu/article/details/81461509