thinkphp3.2实现在线留言提交验证码功能


Posted in PHP onJuly 19, 2017

如何实现验证码成功验证功能?提交验证码?这篇文章为大家解答。

把今天掌握的东西整理一下,要不然,我就忘干净了:

今天在做一个企业网站的时候,有一个在线留言的功能,最后提交的时候需要输入验证码。如图下:

thinkphp3.2实现在线留言提交验证码功能

当然,特连接的并不是我的后台

好了,开始了,首先我需要把验证码显示出来,前端页面:

<div class="message-con clearfix">
 <div class="mcon-left pic pull-left"><img src="/Public/Admin/xx/images/message.png" class="vcenter" alt="" /></div>
 <div class="mcon-right pull-right">
 <form method="post" action="{:U('validate')}" name='valiate'> 
 <label><span>姓名</span><input type="text" name="xingming" class="mname" value=""/><em>*</em></label>
 <label><span>联系电话</span><input type="text" name="tel" class="mtel" /><em>*</em></label>
 <label><span>联系地址</span><input type="text" name="dizhi" class="madd" /></label>
 <label><span>邮箱地址</span><input type="text" name="youxiang" class="memail" /></label>
 <label><span>留言内容</span><textarea name="content" class="mcontent"></textarea><em>*</em></label>
 <label class="mcodela"><input type="text" name="code" class="mcode" />
  <img src="{:U('verify')}" onClick="this.src=this.src+'?'+Math.random();" alt="" />
  <a href="#" rel="external nofollow" >看不清楚?换一张</a><em>*</em></label>
 <label><input type="submit" class="msub" name="tj" value="在线提交" /></label>
 </form>
 </div>
 </div>
 </div>

好 点击事件,name,提交按钮都改好了,走起,去控制器啦;

来到控制器这里,先做一件事,引入model吧:

use Otcms\Model;

啥?没有model类  自己去写吧:

<?php
namespace Otcms\Model;
use Think\Model;
class UserModel extends Model{
 protected $_validate = array(

  array('xingming','require','姓名不可空!'),
  array('tel','require ','手机号不可空!'),
  array('dizhi','require','地址不可空!'),
  array('youxiang',' require','邮箱不可空!'),
  array('content','require','内容不可空!'),
 );
}

设置验证码:

显示:

public function verify(){

  $config = array(
   'fontSize' => 30, // 验证码字体大小
   'length'  => 4,  // 验证码位数
  );

  $verify = new\Think\Verify($config);
  $verify->entry();

 }

下面来写条件:

public function validate(){
  $date['xingming'] = I('post.xingming');
  $date['tel'] = I('post.tel');
  $date['dizhi'] = I('post.izhi');
  $date['youxiang'] = I('post.youxiang');
  $date['content'] = I('post.content');
  $yzm = I('post.code');

  $fkyz = D("Liuyan");

  if (!$fkyz->create()){
   // 如果创建失败 表示验证没有通过 输出错误提示信息
   exit($fkyz->getError());

  }else{
  
   // 验证通过 可以进行其他数据操作
   $verify = new \Think\Verify();
   $yzmyz = $verify->check($yzm);

   if(!$yzmyz){

    $this->error('验证码错误');

   }
   else{
    $validate = M("liuyan");
    $validate->add($date);
    $this->success('添加成功');

   }
  }
 }

图:

thinkphp3.2实现在线留言提交验证码功能

thinkphp3.2实现在线留言提交验证码功能

以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持三水点靠木。

PHP 相关文章推荐
PHP数据库开发知多少
Oct 09 PHP
15种PHP Encoder的比较
Mar 06 PHP
PHP字符过滤函数去除字符串最后一个逗号(rtrim)
Mar 26 PHP
PHP FATAL ERROR: CALL TO UNDEFINED FUNCTION BCMUL()解决办法
May 04 PHP
php数组查找函数总结
Nov 18 PHP
PHP的Yii框架中行为的定义与绑定方法讲解
Mar 18 PHP
Thinkphp和onethink实现微信支付插件
Apr 13 PHP
浅析Laravel5中队列的配置及使用
Aug 04 PHP
利用PHP命令行模式采集股票趋势信息
Aug 09 PHP
PHP7内核之Reference详解
Mar 14 PHP
PHP基于openssl实现非对称加密代码实例
Jun 19 PHP
PHP延迟静态绑定使用方法实例解析
Sep 05 PHP
ThinkPHP框架表单验证操作方法
Jul 19 #PHP
动态表单验证的操作方法和TP框架里面的ajax表单验证
Jul 19 #PHP
关于ThinkPhp 框架表单验证及ajax验证问题
Jul 19 #PHP
php实现的pdo公共类定义与用法示例
Jul 19 #PHP
PHP实现的Redis多库选择功能单例类
Jul 27 #PHP
PHP策略模式定义与用法示例
Jul 27 #PHP
windows下的WAMP环境搭建图文教程(推荐)
Jul 27 #PHP
You might like
php生成唯一的订单函数分享
2015/02/02 PHP
discuz论坛更换域名,详细文件修改步骤
2020/12/09 PHP
asp批量修改记录的代码
2008/06/25 Javascript
JavaScript 事件查询综合
2009/07/13 Javascript
js中复制行和删除行的操作实例
2013/06/25 Javascript
使用text方法获取Html元素文本信息示例
2014/09/01 Javascript
javascript制作的简单注册模块表单验证
2015/04/13 Javascript
Nodejs Express4.x开发框架随手笔记
2015/11/23 NodeJs
jquery移除了live()、die(),新版事件绑定on()、off()的方法
2016/10/26 Javascript
Angular使用ng-messages与PHP进行表单数据验证
2016/12/28 Javascript
jQuery实现返回顶部按钮和scroll滚动功能[带动画效果]
2017/07/05 jQuery
父组件中vuex方法更新state子组件不能及时更新并渲染的完美解决方法
2018/04/25 Javascript
vue-baidu-map 进入页面自动定位的解决方案(推荐)
2018/04/28 Javascript
JS尾递归的实现方法及代码优化技巧
2019/01/19 Javascript
js/jQuery实现全选效果
2019/06/17 jQuery
微信小程序实现限制用户转发功能的实例代码
2020/02/22 Javascript
TypeScript 运行时类型检查补充工具
2020/09/28 Javascript
关于Node.js中频繁修改代码重启服务器的问题
2020/10/15 Javascript
解决vue elementUI 使用el-select 时 change事件的触发问题
2020/11/17 Vue.js
用yum安装MySQLdb模块的步骤方法
2016/12/15 Python
浅谈python日志的配置文件路径问题
2018/04/28 Python
对Python的多进程锁的使用方法详解
2019/02/18 Python
python3通过selenium爬虫获取到dj商品的实例代码
2019/04/25 Python
Python中的引用和拷贝实例解析
2019/11/14 Python
Python netmiko模块的使用
2020/02/14 Python
Pytorch转keras的有效方法,以FlowNet为例讲解
2020/05/26 Python
Python使用tkinter实现摇骰子小游戏功能的代码
2020/07/02 Python
详解python模块pychartdir安装及导入问题
2020/10/22 Python
玖熙女鞋美国官网:Nine West
2016/10/06 全球购物
ProBikeKit美国官网:自行车套件,跑步和铁人三项套件
2016/10/13 全球购物
意大利奢侈品多品牌集合店:TheDoubleF
2019/08/24 全球购物
阿迪达斯中国官网:Adidas中国
2020/12/14 全球购物
艺术系大学生毕业个人自我评价
2013/09/19 职场文书
留学自荐信的技巧
2013/10/17 职场文书
党员作风建设自查报告
2014/10/23 职场文书
建筑工程挂靠协议书
2016/03/23 职场文书