thinkphp3.2實(shí)現(xiàn)在線留言提交驗(yàn)證碼功能
如何實(shí)現(xiàn)驗(yàn)證碼成功驗(yàn)證功能?提交驗(yàn)證碼?這篇文章為大家解答。
把今天掌握的東西整理一下,要不然,我就忘干凈了:
今天在做一個(gè)企業(yè)網(wǎng)站的時(shí)候,有一個(gè)在線留言的功能,最后提交的時(shí)候需要輸入驗(yàn)證碼。如圖下:
當(dāng)然,特連接的并不是我的后臺(tái)
好了,開始了,首先我需要把驗(yàn)證碼顯示出來,前端頁(yè)面:
<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>聯(lián)系電話</span><input type="text" name="tel" class="mtel" /><em>*</em></label> <label><span>聯(lián)系地址</span><input type="text" name="dizhi" class="madd" /></label> <label><span>郵箱地址</span><input type="text" name="youxiang" class="memail" /></label> <label><span>留言內(nèi)容</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>
好 點(diǎn)擊事件,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 ','手機(jī)號(hào)不可空!'), array('dizhi','require','地址不可空!'), array('youxiang',' require','郵箱不可空!'), array('content','require','內(nèi)容不可空!'), ); }
設(shè)置驗(yàn)證碼:
顯示:
public function verify(){ $config = array( 'fontSize' => 30, // 驗(yàn)證碼字體大小 'length' => 4, // 驗(yàn)證碼位數(shù) ); $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()){ // 如果創(chuàng)建失敗 表示驗(yàn)證沒有通過 輸出錯(cuò)誤提示信息 exit($fkyz->getError()); }else{ // 驗(yàn)證通過 可以進(jìn)行其他數(shù)據(jù)操作 $verify = new \Think\Verify(); $yzmyz = $verify->check($yzm); if(!$yzmyz){ $this->error('驗(yàn)證碼錯(cuò)誤'); } else{ $validate = M("liuyan"); $validate->add($date); $this->success('添加成功'); } } }
圖:
以上就是本文的全部?jī)?nèi)容,希望對(duì)大家的學(xué)習(xí)有所幫助,也希望大家多多支持腳本之家。
- TP5(thinkPHP5)框架基于ajax與后臺(tái)數(shù)據(jù)交互操作簡(jiǎn)單示例
- thinkPHP5 ajax提交表單操作實(shí)例分析
- thinkPHP5框架實(shí)現(xiàn)基于ajax的分頁(yè)功能示例
- Thinkphp5框架ajax接口實(shí)現(xiàn)方法分析
- ThinkPHP5 通過ajax插入圖片并實(shí)時(shí)顯示(完整代碼)
- TP5(thinkPHP5)框架使用ajax實(shí)現(xiàn)與后臺(tái)數(shù)據(jù)交互的方法小結(jié)
- ThinkPHP5.1+Ajax實(shí)現(xiàn)的無(wú)刷新分頁(yè)功能示例
- ThinkPHP表單自動(dòng)提交驗(yàn)證實(shí)例教程
- ThinkPHP 防止表單重復(fù)提交的方法
- ThinkPHP提交表單時(shí)默認(rèn)自動(dòng)轉(zhuǎn)義的解決方法
- ThinkPHP防止重復(fù)提交表單的方法實(shí)例分析
- thinkphp5 + ajax 使用formdata提交數(shù)據(jù)(包括文件上傳) 后臺(tái)返回json完整實(shí)例
相關(guān)文章
免費(fèi)的ip數(shù)據(jù)庫(kù)淘寶IP地址庫(kù)簡(jiǎn)介和PHP調(diào)用實(shí)例
淘寶ip地址庫(kù)提供免費(fèi)的ip信息查詢,可查詢ip所在國(guó)家、區(qū)域、省份、城市及運(yùn)營(yíng)商等信息。不需要認(rèn)證不需要注冊(cè),唯一的小缺陷就是限制美妙查詢頻率不能高于10次。2014-04-04PHP網(wǎng)站自動(dòng)化配置的實(shí)現(xiàn)方法(必看)
下面小編就為大家?guī)硪黄狿HP網(wǎng)站自動(dòng)化配置的實(shí)現(xiàn)方法(必看)。小編覺得挺不錯(cuò)的,現(xiàn)在就分享給大家,也給大家做個(gè)參考。一起跟隨小編過來看看吧2017-05-05php實(shí)現(xiàn)根據(jù)IP地址獲取其所在省市的方法
今天,就討論一下在PHP中如何獲取用戶IP地址、PHP根據(jù)IP判斷用戶所在城市以及PHP根據(jù)IP實(shí)現(xiàn)城市切換或跳轉(zhuǎn)的問題。2015-04-04Zend Framework入門教程之Zend_Registry組件用法詳解
這篇文章主要介紹了Zend Framework入門教程之Zend_Registry組件用法,結(jié)合實(shí)例形式分析了Zend_Registry組件實(shí)現(xiàn)對(duì)象注冊(cè)的設(shè)置、獲取、判斷、刪除等操作常用技巧,需要的朋友可以參考下2016-12-12php二維數(shù)組排序與默認(rèn)自然排序的方法介紹
本篇文章介紹了,在php中二維數(shù)組排序與默認(rèn)自然排序的方法。需要的朋友參考下2013-04-04thinkphp項(xiàng)目如何自定義微信分享描述內(nèi)容
本文主要講述:在thinkphp框架中,如何獲取微信分享接口權(quán)限、如何設(shè)置安全域名、如何修改微信分享標(biāo)題、修改微信分享描述、修改微信分享圖片、如何定制微信分享內(nèi)容2017-02-02