登录  /  注册
博主信息
博文 40
粉丝 0
评论 0
访问量 24001
热门教程
更多>
最新下载
更多>
网站特效
网站源码
网站素材
前端模板
异步请求fetch API 以及响应数据的处理, 用户数据的接收,session实战
飞天001
原创
436人浏览过

异步请求fetch API 以及响应数据的处理, 用户数据的接收,session实战

1. 表单的异步请求

  1. async function doLogin(obj){ //async 定义为异步函数
  2. const email = obj.form.email.value
  3. const password =obj.form.password.value
  4. // console.log(email, password);
  5. if(email.length >0 && password.length > 0){
  6. // 异步提交fetch api
  7. // console.log('111');
  8. const res = await fetch('./lib/user/handle.php',{
  9. //请求方法
  10. method:'post',
  11. //设置请求头
  12. headers:{
  13. 'content-type':'application/json;charset=utf-8'
  14. },
  15. //将需要传送到服务器上的数据,解析为json
  16. body:JSON.stringify({
  17. email,
  18. password
  19. })
  20. })
  21. // 解析返回的数据 response返回json格式时,用r.json()打印响应的内容
  22. const result = await res.json()
  23. console.log(result);

2.响应数据处理

  1. if(result){
  2. alert('登陆成功')
  3. location.href='index.php'
  4. }else{
  5. alert('验证失败')
  6. location.href='login.php'
  7. }

3.用户数据接收

  1. $json = file_get_contents('php://input');
  2. $user = json_decode($json, true);
  3. $email = $user['email'];
  4. $password = $user['password'];

4.用户过滤

  1. $result = array_values(array_filter($users,function($user)use($email,$password){
  2. return $user['email']===$email&&$user['password']===$password;
  3. }));
  4. $flag = false;
  5. if(count($result)===1){
  6. $flag = true;
  7. $_SESSION['username'] = $result[0]['name'] ;
  8. }
  9. echo json_encode($flag);

5.会话跟踪

  1. session_start();
  2. $username = $_SESSION['username'];
  3. <?php if (isset($username)) :;?>
  4. <?=$username?> <a href='#'>[注销]</a>
  5. <?php else:?>
  6. <a href="login.php">登录</a>
  7. <?php endif?>
批改老师:PHPzPHPz

批改状态:合格

老师批语:
本博文版权归博主所有,转载请注明地址!如有侵权、违法,请联系admin@php.cn举报处理!
全部评论 文明上网理性发言,请遵守新闻评论服务协议
0条评论
作者最新博文
关于我们 免责申明 意见反馈 讲师合作 广告合作 最新更新
php中文网:公益在线php培训,帮助PHP学习者快速成长!
关注服务号 技术交流群
PHP中文网订阅号
每天精选资源文章推送
PHP中文网APP
随时随地碎片化学习
PHP中文网抖音号
发现有趣的

Copyright 2014-2025 https://www.php.cn/ All Rights Reserved | php.cn | 湘ICP备2023035733号

  • 登录PHP中文网,和优秀的人一起学习!
    全站2000+教程免费学