如何實(shí)現(xiàn)驗(yàn)證碼成功驗(yàn)證功能?提交驗(yàn)證碼?這篇文章為大家解答。
把今天掌握的東西整理一下,要不然,我就忘干凈了:
今天在做一個企業(yè)網(wǎng)站的時候,有一個在線留言的功能,最后提交的時候需要輸入驗(yàn)證碼。如圖下:
當(dāng)然,特連接的并不是我的后臺
好了,開始了,首先我需要把驗(yàn)證碼顯示出來,前端頁面:
<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ī)號不可空!'), 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)證沒有通過 輸出錯誤提示信息 exit($fkyz->getError()); }else{ // 驗(yàn)證通過 可以進(jìn)行其他數(shù)據(jù)操作 $verify = new \Think\Verify(); $yzmyz = $verify->check($yzm); if(!$yzmyz){ $this->error('驗(yàn)證碼錯誤'); } else{ $validate = M("liuyan"); $validate->add($date); $this->success('添加成功'); } } }
圖:
以上就是本文的全部內(nèi)容,希望對大家的學(xué)習(xí)有所幫助,也希望大家多多支持。
【網(wǎng)站聲明】本站除付費(fèi)源碼經(jīng)過測試外,其他素材未做測試,不保證完整性,網(wǎng)站上部分源碼僅限學(xué)習(xí)交流,請勿用于商業(yè)用途。如損害你的權(quán)益請聯(lián)系客服QQ:2655101040 給予處理,謝謝支持。