登录  /  注册
博主信息
博文 40
粉丝 0
评论 0
访问量 23884
热门教程
更多>
最新下载
更多>
网站特效
网站源码
网站素材
前端模板
实现用户注销, 封装表单字段的原生验证方法 , 定界符heredoc, nowdoc的用法与使用
飞天001
原创
455人浏览过

实现用户注销, 封装表单字段的原生验证方法 , 定界符heredoc, nowdoc的用法与使用

1.用户注销功能

  1. //创建点击事件
  2. <a href='' onclick="logout(event)">[注销]</a>
  1. //方法实现
  2. async function logout(ev){
  3. ev.preventDefault();
  4. // ev.preventDefault();
  5. if(confirm('是否退出')){
  6. const url = './lib/userHandle.php?action=logout';
  7. const res = await fetch(url);
  8. const result = await res.json();
  9. if(result){
  10. alert('退出成功');
  11. location.href='index.php';
  12. }else{
  13. alert('系统错误,请重试');
  14. location.href='login.php';
  15. }
  16. }
  17. }
  1. session_start();
  2. $flag = false;
  3. if(session_destroy()){
  4. $flag = true;
  5. }
  6. echo json_encode($flag);

2. 封装表单字段的原生验证方法

  1. const getInput = (form)=>{
  2. return {
  3. nackname:{
  4. ele:form.nickname,
  5. value:form.nickname.value.trim()
  6. },email:{
  7. ele:form.email,
  8. value:form.email.value.trim()
  9. },password:{
  10. ele:form.password,
  11. value:form.password.value.trim()
  12. },rePassword:{
  13. ele:form.rePassword,
  14. value:form.rePassword.value.trim()
  15. }
  16. }
  17. }
  1. const isEmpty = (user)=>{
  2. switch(true){
  3. case user.nickname.value.length ===0:
  4. alert('昵称不能为空');
  5. user.nickname.ele.focus();
  6. return false; //代码结束,不再继续执行
  7. case user.email.value.length ===0:
  8. alert('邮箱不能为空');
  9. user.email.ele.focus();
  10. return false;
  11. case user.password.value.length===0:
  12. alert('密码不能为空');
  13. user.password.ele.focus();
  14. return false;
  15. case user.rePassword.value.length ===0:
  16. alert('确认密码不能为空');
  17. user.rePassword.ele.focus();
  18. return false;
  19. default:
  20. return true; //拦截结束,返回true
  21. }
  22. }
  1. const isPwdEqeu = (user)=>{
  2. if(user.password.value!==user.rePassword.value){
  3. alert('两次密码输入不一致');
  4. user.password.focus(); //输入框
  5. return false;
  6. } else{
  7. return true;
  8. }
  9. }
  1. const createData = (user)=>{
  2. return{
  3. nickname:user.nickname.value,
  4. email:user.email.value,
  5. password:user.password.value
  6. }
  7. }
  1. async function insertData(data){
  2. url = './lib/userHandle.php?action=register';
  3. const res = await fetch(url,{
  4. method:'POST',
  5. headers:{
  6. 'content-Type':'application/json;charset=utf-8',
  7. },
  8. body:JSON.stringify(data)
  9. });
  10. //返回数据
  11. const result = res.json();
  12. if(result){
  13. aletrt('注册成功');
  14. location.href='index.php';
  15. }else{
  16. alert('注册失败,请重试');
  17. location.href='register.php';
  18. btn.form.nickname.focus();
  19. }
  20. }

3. 定界符heredoc, nowdoc的用法与使用

  1. echo <<<TIPS
  2. <script>
  3. alert('非法请求!')
  4. location.href='../login.php'
  5. <script>
  6. TIPS;
  1. // 定界符 heredoc 解析变量和特殊字符
  2. $str = <<< POEM
  3. 窗前明月光, \n疑是地上霜。\n
  4. POEM;
  5. // 定界符 nowdoc //不会解析变量和特殊字符
  6. $str = <<< 'POEM'
  7. 窗前明月光, \n疑是地上霜。\n
  8. POEM;
批改老师: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+教程免费学