laravel 添加验证码

1、  安装依赖  composer require gregwar/captcha

2、使用

use Gregwar\Captcha\CaptchaBuilder;
use DB;
use Request;
use Session;

//生成验证码
    public function captcha() {
        //生成验证码图片的Builder对象,配置相应属性
        $builder = new CaptchaBuilder;
        //可以设置图片宽高及字体
        $builder->build($width = 250, $height = 70, $font = null);
        //获取验证码的内容
        $phrase = $builder->getPhrase();
        //把内容存入session
        Session::flash(‘milkcaptcha‘, $phrase);
        //生成图片
        header("Cache-Control: no-cache, must-revalidate");
        header(‘Content-Type: image/jpeg‘);
        $builder->output();
    }

/**
     * Show the form for creating a new resource.
     *
     * @return Response
     */
    public function create_mes(Request $request)
    {
        extract($request::all());
        if (Session::get(‘milkcaptcha‘) == $code) {
            //用户输入验证码正确
            return \Response::json(array(‘code‘ => 0, ‘info‘ => ‘ok‘));
        } else {
            //用户输入验证码错误
            return \Response::json(array(‘code‘ => 2, ‘info‘ => ‘erro‘));
        }

        $res = DB::insert(‘insert message (content,username,createtime,contract) values (?,?,now(),?)‘,
            [$content, $username, $contract]);
        return \Response::json(array(‘code‘ => 0, ‘info‘ => ‘ok‘));
    }

3、vue 端 , 提交失败或者成功都重新获取验证码

<img @click="changeCode()" class="vCode" ref="vCImg" :src="baseURL+‘captcha‘" />

changeCode() {
        let img  = this.$refs.vCImg
        img.src = baseURL+‘captcha?‘+new Date().getTime();
      }

submitForm(formName) {
        this.$refs[formName].validate((valid) => {
          if (valid) {
            bolosev.create_mes(this.message).then(res=>{
                if (res.code==0){
                  this.$message.success("留言成功")
                  this.changeCode()
                  this.resetForm(formName)
                }
                else if (res.code==2)
                {
                  this.$message.error("验证码有误")
                  this.changeCode()
                }else
                  this.$message.error("留言失败")
            })
          } else {
            console.log(‘error submit!!‘);
            return false;
          }
        });
      },

原文地址:https://www.cnblogs.com/Mvloveyouforever/p/10009237.html

时间: 2024-10-10 12:52:08

laravel 添加验证码的相关文章

yii2中添加验证码的实现方法

本文实例讲述了yii2中添加验证码的实现方法.分享给大家供大家参考,具体如下: 首先,在模型中添加验证码字段: ? 1 2 3 public function rules(){ return ['verifyCode', 'captcha'], } 其次,可以在函数attributeLabels中添加前台页面中验证码的字段名称: ? 1 2 3 public function atrributeLabels(){ return ['verifyCode'=>'Verification Code'

【试水CAS-4.0.3】第03节_CAS服务端登录页添加验证码

/** * @see ------------------------------------------------------------------------------------------------------------------------ * @see CAS登录页添加验证码 * @see 0.这年头验证码一般用来防止帐号被暴力破解,如果我们的系统是走专线的,也就是说放在内网,那完全没必要搞验证码 * @see 1.由于CAS使用了Spring Web Flow框架,所以

前后端分离之后添加验证码

转载自:http://www.cnblogs.com/liminjun88/p/6556493.html#commentform 1.背景介绍 团队开发的项目,前端基于Bootstrap+AngularJS,后端Spring MVC以RESTful接口给前端调用.开发和部署都是前后端分离.项目简单部署图如下,因为后台同时采用微服务的方式,所以后台不止3个,画图示意.终极方案是采用Docker,在前端和后台调用中间添加一层:API Gateway. 因为考虑到和其他系统集成的可能性,所以在登录这一

PHPCMS v9 自定义表单添加验证码验证

1. 在 \phpcms\templates\default\formguide\show.html 中添加验证码显示 <input type="text" id="code" name="code" size="8" class="input-text">{form::checkcode('code_img', '4', '14', 84, 24)} 2. 在 \phpcms\modules\

PHPCMS v9 自定义表单添加验证码

1.  在 \phpcms\templates\default\formguide\show.html 中添加验证码显示 <input type="text" id="code" name="code" size="8" class="input-text">{form::checkcode('code_img', '4', '14', 84, 24)} 2. 在 \phpcms\modules

Membership添加验证码登录

1.在公共类ImageHelper中编写公共方法,产生随机验证码 /// <summary> /// 产生随机验证码 /// </summary> /// <returns></returns> public string GetString() { string randString = ""; Random random = new Random(); do { //使用DateTime.Now.Millisecond作为生成随机数的

WordPress优化:给后台登录添加验证码以及登录限制

为了防止后台被某些黑客进行密码爆破,添加验证码以及登录限制是很有必要的.这里我分享两个插件,分别是:SI CAPTCHA Anti-Spam 和 Limit Login Attempts .一个是验证码,另一个是限制登录尝试.这两个插件直接在网站后台搜索安装就可以了 开启两个插件后,后台登录效果如下: 好了,有兴趣的小伙伴可以试试O(∩_∩)O~

cas4.2.4 登添加验证码

看了很多添加验证码的博文,唯独没有4.24的 重点看第3条,其余的和别人博文大致相同 1.首先在cas工程的web.xml增加验证码功能的支持 <!-- 验证码功能 -->      <servlet>          <servlet-name>Kaptcha</servlet-name>          <servlet-class>com.google.code.kaptcha.servlet.KaptchaServlet</se

CAS添加验证码功能

1.  cas.war 下面的web-inf/web.xml  lib添加  kaptcha.jar kaptcha.jar通过maven获取 <dependency> <groupId>com.github.axet</groupId> <artifactId>kaptcha</artifactId> <version>0.0.9</version> </dependency> 这个maven 包含两个 ja