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初学入门
Nov 19 PHP
php中限制ip段访问、禁止ip提交表单的代码分享
Aug 22 PHP
php生成百度sitemap站点地图类函数实例
Oct 17 PHP
PHP函数实现分页含文本分页和数字分页
Oct 23 PHP
php中time()与$_SERVER[REQUEST_TIME]用法区别
Nov 19 PHP
php用户密码加密算法分析【Discuz加密算法】
Oct 12 PHP
PHP实现向关联数组指定的Key之前插入元素的方法
Jun 06 PHP
PHP魔术方法之__call与__callStatic使用方法
Jul 23 PHP
PHP命名空间(namespace)原理与用法详解
Dec 11 PHP
php获取是星期几的的一些常用姿势
Dec 15 PHP
TP5框架页面跳转样式操作示例
Apr 05 PHP
php如何实现数据库的备份和恢复
Nov 30 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
注意:php5.4删除了session_unregister函数
2013/08/05 PHP
推荐一款MAC OS X 下php集成开发环境mamp
2014/11/08 PHP
PHP中使用break跳出多重循环代码实例
2015/01/21 PHP
PHP实现动态添加XML中数据的方法
2018/03/30 PHP
Nigma vs Alliance BO5 第四场2.14
2021/03/10 DOTA
几款极品的javascript压缩混淆工具
2007/05/16 Javascript
jquery插件实现鼠标经过图片右侧显示大图的效果(类似淘宝)
2013/02/04 Javascript
按下Enter焦点移至下一个控件的实现js代码
2013/12/11 Javascript
jQuery如何实现点击页面获得当前点击元素的id或其他信息
2014/01/09 Javascript
Jquery插件编写简明教程
2014/03/25 Javascript
判断输入的字符串是否是日期格式的简单方法
2016/07/11 Javascript
让浏览器崩溃的12行JS代码(DoS攻击分析及防御)
2016/10/10 Javascript
vue.js实现单选框、复选框和下拉框示例
2017/07/18 Javascript
React-Native做一个文本输入框组件的实现代码
2017/08/10 Javascript
详解angularjs4部署文件过大解决过程
2018/12/05 Javascript
基于JS正则表达式实现模板数据动态渲染(实现思路详解)
2020/03/07 Javascript
[01:22:29]真视界:2019年国际邀请赛总决赛
2020/01/29 DOTA
[43:26]完美世界DOTA2联赛PWL S2 Forest vs Rebirth 第二场 11.20
2020/11/23 DOTA
python smtplib模块发送SSL/TLS安全邮件实例
2015/04/08 Python
python出现&quot;IndentationError: unexpected indent&quot;错误解决办法
2017/10/15 Python
python学生信息管理系统
2018/03/13 Python
python 定时器,轮询定时器的实例
2019/02/20 Python
Python爬虫实现爬取百度百科词条功能实例
2019/04/05 Python
python输入错误后删除的方法
2019/10/12 Python
Pycharm 安装 idea VIM插件的图文教程详解
2020/02/21 Python
python中sklearn的pipeline模块实例详解
2020/05/21 Python
手把手教你如何用Pycharm2020.1.1配置远程连接的详细步骤
2020/08/07 Python
Python tempfile模块生成临时文件和临时目录
2020/09/30 Python
CSS3 linear-gradient线性渐变生成加号和减号的方法
2017/11/21 HTML / CSS
柯基袜:Corgi Socks
2017/01/26 全球购物
乌克兰数字设备、配件和智能技术的连锁商店:KTC
2020/08/18 全球购物
如何防止同一个帐户被多人同时登录
2013/08/01 面试题
共产党员公开承诺书
2014/03/25 职场文书
2014乡镇党政班子四风问题思想汇报
2014/09/14 职场文书
违纪开除通知书
2015/04/25 职场文书
Nginx反向代理及负载均衡如何实现(基于linux)
2021/03/31 Servers