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 相关文章推荐
PHP4实际应用经验篇(8)
Oct 09 PHP
php强制下载类型的实现代码
Apr 21 PHP
php object转数组示例
Jan 15 PHP
Web程序工作原理详解
Dec 25 PHP
php简单实现多字节字符串翻转的方法
Mar 31 PHP
php中 ob_start等函数截取标准输出的方法
Jun 22 PHP
PHP弹出对话框技巧详细解读
Sep 26 PHP
PHP截取IE浏览器并缩小原图的方法
Mar 04 PHP
PHP7.1方括号数组符号多值复制及指定键值赋值用法分析
Sep 26 PHP
php 多文件上传的实现实例
Oct 23 PHP
ThinkPHP框架整合微信支付之Native 扫码支付模式一图文详解
Apr 09 PHP
PHP保留两位小数的几种方法
Jul 24 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中simplexml_load_string函数使用说明
2011/01/01 PHP
解析PHP中数组元素升序、降序以及重新排序的函数
2013/06/20 PHP
PHP中使用GD库绘制折线图 折线统计图的绘制方法
2015/11/09 PHP
CI框架的安全性分析
2016/05/18 PHP
关于js中window.location.href,location.href,parent.location.href,top.location.href的用法与区别
2010/10/18 Javascript
基于Jquery的淡入淡出的特效基础练习
2010/12/13 Javascript
js作用域及作用域链概念理解及使用
2013/04/15 Javascript
js渐变显示渐变消失示例代码
2013/08/01 Javascript
javascript 函数声明与函数表达式的区别介绍
2013/10/05 Javascript
初识Node.js
2015/03/20 Javascript
JS生成某个范围的随机数【四种情况详解】
2016/04/20 Javascript
Javascript 高性能之递归,迭代,查表法详解及实例
2017/01/08 Javascript
jQuery Validate 无法验证 chosen-select元素的解决方法
2017/05/17 jQuery
Angularjs修改密码的实例代码
2017/05/26 Javascript
vue+vuecli+webpack中使用mockjs模拟后端数据的示例
2017/10/24 Javascript
基于jQuery实现Ajax验证用户名是否可用实例
2018/03/25 jQuery
Vue中的作用域CSS和CSS模块的区别
2018/10/09 Javascript
angularJS1 url中携带参数的获取方法
2018/10/09 Javascript
nodejs中用npm初始化来创建package.json的实例讲解
2018/10/10 NodeJs
详解一个基于套接字实现长连接的express
2019/03/28 Javascript
jquery实现轮播图特效
2020/04/12 jQuery
Python的设计模式编程入门指南
2015/04/02 Python
Python中在for循环中嵌套使用if和else语句的技巧
2016/06/20 Python
python2.x实现人民币转大写人民币
2018/06/20 Python
Python Web框架之Django框架cookie和session用法分析
2019/08/16 Python
python PyQt5/Pyside2 按钮右击菜单实例代码
2019/08/17 Python
关于numpy.where()函数 返回值的解释
2019/12/06 Python
python更新数据库中某个字段的数据(方法详解)
2020/11/18 Python
Python用户自定义异常的实现
2020/12/25 Python
C语言开发工程师测试题
2016/12/20 面试题
企业门卫岗位职责
2013/12/12 职场文书
行政办公员自我评价分享
2013/12/14 职场文书
大学生读书笔记范文
2015/07/01 职场文书
跟班学习心得体会(共6篇)
2016/01/23 职场文书
人生哲理妙语30条:淡写流年,笑过人生
2019/09/04 职场文书
导游词之白茶谷九龙峡
2019/10/23 职场文书