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 禁止页面缓存输出
Jan 07 PHP
PHP学习散记_编码(json_encode 中文不显示)
Nov 10 PHP
探讨php中遍历二维数组的几种方法详解
Jun 08 PHP
PHP轻量级数据库操作类Medoo增加、删除、修改、查询例子
Jul 04 PHP
PHP统计目录大小的自定义函数分享
Nov 18 PHP
PHP中substr()与explode()函数用法分析
Nov 24 PHP
php生成短域名函数
Mar 23 PHP
php实现Session存储到Redis
Nov 11 PHP
php创建桌面快捷方式实现方法
Dec 31 PHP
Laravel中间件实现原理详解
Oct 09 PHP
php curl获取https页面内容,不直接输出返回结果的设置方法
Jan 15 PHP
tp5.1 框架数据库常见操作详解【添加、删除、更新、查询】
May 26 PHP
ThinkPHP框架表单验证操作方法
Jul 19 #PHP
动态表单验证的操作方法和TP框架里面的ajax表单验证
Jul 19 #PHP
关于ThinkPhp 框架表单验证及ajax验证问题
Jul 19 #PHP
php实现的pdo公共类定义与用法示例
Jul 19 #PHP
PHP多进程编程实例详解
Jul 19 #PHP
PHP preg_match实现正则表达式匹配功能【输出是否匹配及匹配值】
Jul 19 #PHP
php实现生成code128条形码的方法详解
Jul 19 #PHP
You might like
php preg_match_all结合str_replace替换内容中所有img
2008/10/11 PHP
使用PHP把HTML生成PDF文件的几个开源项目介绍
2014/11/17 PHP
php基于协程实现异步的方法分析
2019/07/17 PHP
[原创]后缀就扩展名为js的文件是什么文件
2007/12/06 Javascript
JS 拼图游戏 面向对象,注释完整。
2009/06/18 Javascript
JavaScript中的几个关键概念的理解-原型链的构建
2011/05/12 Javascript
深入理解JavaScript系列(6) 强大的原型和原型链
2012/01/15 Javascript
javascript Array.prototype.slice的使用示例
2013/11/14 Javascript
使用js写的一个简易的投票
2013/11/27 Javascript
基于jquery实现等比缩放图片
2014/12/03 Javascript
javascript+html5实现仿flash滚动播放图片的方法
2015/04/27 Javascript
javascript实现控制文字大中小显示
2015/04/28 Javascript
js中this用法实例详解
2015/05/05 Javascript
JS数组合并push与concat区别分析
2015/12/17 Javascript
Bootstrap实现提示框和弹出框效果
2017/01/11 Javascript
jQuery实现上传图片前预览效果功能
2017/08/03 jQuery
基于javascript实现贪吃蛇小游戏
2019/11/25 Javascript
js实现无限层级树形数据结构(创新算法)
2020/02/27 Javascript
[03:24][TI9纪实] Dota奶爸
2019/08/22 DOTA
python实现给字典添加条目的方法
2014/09/25 Python
简单实现python爬虫功能
2015/12/31 Python
Python实现SSH远程登陆,并执行命令的方法(分享)
2017/05/08 Python
Python学习笔记之抓取某只基金历史净值数据实战案例
2019/06/03 Python
Python3 xml.etree.ElementTree支持的XPath语法详解
2020/03/06 Python
PyPDF2读取PDF文件内容保存到本地TXT实例
2020/05/12 Python
PyQt5实现仿QQ贴边隐藏功能的实例代码
2020/05/24 Python
如何在scrapy中捕获并处理各种异常
2020/09/28 Python
关于探究python中sys.argv时遇到的问题详解
2021/02/23 Python
Maxpeedingrods美国:高性能汽车零件
2020/02/14 全球购物
化工专业个人的求职信范文
2013/11/28 职场文书
婚庆公司的创业计划书
2014/01/22 职场文书
就业协议书范本
2014/04/11 职场文书
2014年团工作总结
2014/11/27 职场文书
三峡导游词
2015/01/31 职场文书
教您怎么制定西餐厅运营方案 ?
2019/07/05 职场文书
victoriaMetrics库布隆过滤器初始化及使用详解
2022/04/05 Golang