图形验证码的制作看似困难,实则非常简单,因为cmf为我们提供了验证码的标签,都封装好了。
cmf官方文档中给我们写的十分详细了
[验证码官方文档](https://ihavenolimitations.xyz/thinkcmf/doc/266558)
前端调用
\plugins\guestbook\view\widget.html
~~~
<div class="contact-form">
<form id="guestbook-form" class="no-mar" role="form">
<div class="form-group sy-guestbook">
<label for="name">姓名<span class="require-item">*</span></label>
<input type="text" class="form-control" id="name" name="name" placeholder="">
<i class="fa fa-user form-control-guestbook"></i>
</div>
//这里是新增验证码代码---start
<div class="form-group sy-guestbook">
<label for="message">验证<span class="require-item">*</span></label>
<div class="sy-guestbook">
<input type="text" name="captcha" placeholder="验证码" class="form-control captcha"
style="width: 170px;float: left;margin-right: 30px">
<captcha height="38" width="160" font-size="20"/>
</div>
</div>
<div class="g-recaptcha"></div>
//这里是新增验证码代码---end
<input id="guestbook-submit" value="提交" class="submit-button btn btn-default">
</form>
</div>
~~~
后端验证
IndexController.php
~~~
/**
* 提交留言
*/
public function addMsg()
{
*~~~*
// 验证码校验
if (!cmf_captcha_check($data['captcha'])) {
$this->error("验证码错误");
}
*~~~*
}
~~~
![](https://box.kancloud.cn/964a167d52b0da6402a507874c9df0b7_981x344.png)
> 首先感谢WelkinVan 他写的《ThinkCMF5从入门到精通》给了我很多帮助
> 点击去《[ThinkCMF5从入门到精通](https://ihavenolimitations.xyz/welkinvan/thinkcmf5)》
>
- php套路
- 套路之类结构
- thinkphp分块解析之Collection
- thinkphp基础之collection
- Collection在thinkphp中的运用
- thinkcmf模块分析
- Controller按界面点击顺序排列表
- user模块-Controller分析
- portal模块-Controller分析
- admin模块-Controller分析
- user模块-脑图
- portal模块-脑图
- admin模块-脑图
- cmf公共函数解析-common.php
- thinkcmf点滴记录
- 自定义标签详解
- 插件
- 系统信息插件
- 插件演示插件
- 留言板插件
- 留言板1 建立胚胎
- 留言板1-1 数据库变化
- 留言板1-2 自定义钩子
- 留言板2 连接数据库
- 留言板3 读取后台界面数据
- 留言板4 前端模板
- 留言板5 分离cssjs文件
- 留言板6 验证
- 留言板7 图形验证码
- 留言板8 后台留言列表页
- 留言板9 后记
- 评论插件
- 1 分析数据表
- 2 CommentModel.php
- 3 UserModel.php
- 4 DCommentPlugin.php
- 前端调用代码
- 喜欢插件
- 1 分析
- 2 收藏功能
- 3 插件建模
- 4 数据库设计
- 5 插入一条数据
- 多语言
- thinkphp多语言
- thinkcmf多语言