安装验证码tp6安装3.0版本,tp5.1安装2.0
composer require topthink/think-captcha=2.*
1.在controller下新建一个Login.php
class Login extends Controller
{
//登录界面
public function index(){
return View('index@login/index');
}
//登录处理
public function login(Request $request){
//验证器去验证验证码
$ret=$this->validate($request->post(),LoginValidate::class);
if (true !== $ret){
return $this->error($ret);
}
dump($request->post());
}
}
2.在validate下新建一个LoginValidate.php做验证
class LoginValidate extends Validate
{
protected message=[
'code.captcha'=>'验证码都不输,怎么回事?'
];
}
3.设置路由
/路由登录
Route::get('login','index/login/index');
Route::post('login','index/login/index');
4.在view下新建一个login/index.html
里面就是正常的表单提交
//验证码界面
<div class="form-group">
<label class="col-sm-2 control-label">验证码:</label>
<div class="col-sm-5">
<input type="text" class="form-control" name="code">
</div>
<div class="col-sm-5">
<img src="{:captcha_src()}" id="vcode">
</div>
</div>
//验证码点击切换代码(放到最后就可以了)
<script>
//点击更换验证码图片
(this).attr('src','{:captcha_src()}?vt='+rnd);
})
</script>
//link连接下放置下面的代码,让鼠标放在界面上有手势
<style>
#vcode{
cursor: pointer;
}
</style>