登录  /  注册
博主信息
博文 65
粉丝 1
评论 1
访问量 116730
热门教程
更多>
最新下载
更多>
网站特效
网站源码
网站素材
前端模板
tp5 使用自带token令牌验证
技术宅的博客
原创
2701人浏览过

首先参考手册的写法

写在html 表单的 推荐下面一种简单快捷
<input type="hidden" name="__token__" value="{$Request.token}" />
{:token()}

1.正常的表单提交

   protected $rule = [
        'name'  =>  'require|max:25|token',
        'email' =>  'email',
    ];
    怎么使用验证?
    这个token 随便你放在哪个表单字段 后面验证就好了 推荐就放第一个
    不用自己写一个
    '__token__'=>'token'
    所以就是在平时的验证上加一个token在第一个字段验证的后面即可 不可以多加 不然报错 验证不过

下面看一下demo

php 代码

public function index()
{
   if(Request::isGet()){
  return $this->fetch();
 }
 $data=input();
 $validate = Validate::make([
  'name|用户名'  => 'require|max:25|token',
  'password|密码' => 'require|max:16',
 ]);
 if (!$validate->check($data)) {
  return json(['status'=>1,'info'=>$validate->getError()]);
 }
 return json(['status'=>1,'info'=>'ok']);

}

html  表单版本

<form action="" method="post">
    <lable>姓名:</lable><input type="text" name="name" id="name" required="required" placeholder="请输入姓名"><br>
    <lable>密码:</lable><input type="text" name="password" id="password" required="required" placeholder="请输入密码"><br>
    {:token()}
    <button type="submit">提交</button>
</form>

html ajax版本

<div class="center">
    <form action="" id="form">
        <lable>姓名:</lable><input type="text" name="name" id="name" required="required" placeholder="请输入姓名"><br>
        <lable>密码:</lable><input type="text" name="password" id="password" required="required" placeholder="请输入密码"><br>
        {:token()}
        <button type="button" class="submit">提交</button>
    </form>
</div>
</body>
</html>
<script src="https://cdn.bootcss.com/jquery/3.4.1/jquery.min.js"></script>
<script>
    $(".submit").on('click',function(){
        $.ajax({
            type:'post',
            url: '{:url("Index/index")}',
            // data:$('#form').serialize(), 提交所有字段 表单的
            data: {'name':$('#name').val(),'password':$('#password').val(),'__token__':$("input[name='__token__']").val() },
            // 需要几个字段 需要自己传递一下 token 的值  
            dataType:'json',
            success: function(data) {
                if (data.status == 1) {
                    alert(data.info);
                } else {
                    alert(data.info);
                }
            }
        });
    });


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

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

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