本文實(shí)例講述了thinkPHP框架實(shí)現(xiàn)的短信接口驗(yàn)證碼功能。分享給大家供大家參考,具體如下:
我用的是一款名叫 短信寶 的應(yīng)用,新注冊(cè)的用戶(hù)可以免費(fèi)3條測(cè)試短信,發(fā)現(xiàn)一個(gè)BUG,同個(gè)手機(jī)可以無(wú)限注冊(cè),自己玩玩還是可以的。
里面的短信接口代碼什么信息都沒(méi)有,感覺(jué)看得不是很明白,自己測(cè)試了一遍,可以用,直接調(diào)用就可以的,如果要用到項(xiàng)目中還有很多細(xì)節(jié)要處理,比如 設(shè)置一個(gè)驗(yàn)證碼的存活時(shí)間,還有點(diǎn)擊按鈕每隔一分鐘才能按一次,還有判斷這個(gè)用戶(hù)發(fā)的短信另一個(gè)用戶(hù)能不能用,以后有時(shí)間再接下去做,現(xiàn)在先來(lái)個(gè)簡(jiǎn)易版的
視圖層View
!doctype html> html lang="en"> head> meta charset="UTF-8"> title>Ajax無(wú)刷新上傳/title> /head> script type="text/javascript" src="__PUBLIC__/js/jquery-1.10.2.min.js">/script> body> div> 請(qǐng)輸入手機(jī)號(hào)碼:input type="text" name="phone" class="phone"> /div> div> a href="javascript:;" rel="external nofollow" class="butphone">點(diǎn)擊獲取短信驗(yàn)證碼/a> /div> /body> script type="text/javascript"> $('.butphone').click(function(){ var phone = $('.phone').val();//手機(jī)號(hào)碼 $.post( "{:U('smsbao')}",//傳遞的方法 {phone1:phone},//參數(shù) function (data){ if(data == '1'){ alert('輸入框不能為空'); }else if(data == '2'){ alert('輸入的值為非數(shù)字'); }else{ alert(data); } }, 'json' ) }) /script> /html>
控制器層Controller
?php namespace Home\Controller; use Think\Controller; class IndexController extends Controller { //視圖 public function index() { $this->display(); } //短信接口 public function smsbao() { $phonenum = trim( I('post.phone1') );//接收到的參數(shù) //首先判斷電話為不為空 if(empty($phonenum) ){ $this->ajaxReturn('1'); } //判斷是否為數(shù)字 $boolphone = is_numeric($phonenum); if($boolphone){ $statusStr = array( "0" => "短信發(fā)送成功", "-1" => "參數(shù)不全", "-2" => "服務(wù)器空間不支持,請(qǐng)確認(rèn)支持curl或者fsocket,聯(lián)系您的空間商解決或者更換空間!", "30" => "密碼錯(cuò)誤", "40" => "賬號(hào)不存在", "41" => "余額不足", "42" => "帳戶(hù)已過(guò)期", "43" => "IP地址限制", "50" => "內(nèi)容含有敏感詞" ); $num = rand(100000, 999999);//設(shè)置隨機(jī)數(shù) setcookie("numset", $num);//把值放入COOKIE中,關(guān)閉瀏覽器清除cookie; $smsapi = "http://api.smsbao.com/"; $user = "asdf75054138"; //短信平臺(tái)帳號(hào) $pass = md5("asdf75054138"); //短信平臺(tái)密碼 $content="[Bug],來(lái)自四個(gè)火槍手的驗(yàn)證,驗(yàn)證碼:".$num;//要發(fā)送的短信內(nèi)容,隨便設(shè)置 $phone = $phonenum;//要發(fā)送短信的手機(jī)號(hào)碼 $sendurl = $smsapi."sms?u=".$user."p=".$pass."m=".$phone."c=".urlencode($content);//固定格式 $result =file_get_contents($sendurl);//固定格式 $this->ajaxReturn( $statusStr[$result] );//短信是否發(fā)送成功 }else{ $this->ajaxReturn( '2' ); } } }
各種效果圖:
附件
短信寶url:http://www.cocsms.com/
直接注冊(cè)一個(gè)帳號(hào),彈出讓你用一條短信測(cè)試的不要測(cè)試,不然會(huì)損失一條。
更多關(guān)于thinkPHP相關(guān)內(nèi)容感興趣的讀者可查看本站專(zhuān)題:《ThinkPHP入門(mén)教程》、《thinkPHP模板操作技巧總結(jié)》、《ThinkPHP常用方法總結(jié)》、《codeigniter入門(mén)教程》、《CI(CodeIgniter)框架進(jìn)階教程》、《Zend FrameWork框架入門(mén)教程》及《PHP模板技術(shù)總結(jié)》。
希望本文所述對(duì)大家基于ThinkPHP框架的PHP程序設(shè)計(jì)有所幫助。
標(biāo)簽:張家口 巴中 山東 林芝 威海 成都 泰州 梅州
巨人網(wǎng)絡(luò)通訊聲明:本文標(biāo)題《thinkPHP框架實(shí)現(xiàn)的短信接口驗(yàn)證碼功能示例》,本文關(guān)鍵詞 thinkPHP,框架,實(shí)現(xiàn),的,短信,;如發(fā)現(xiàn)本文內(nèi)容存在版權(quán)問(wèn)題,煩請(qǐng)?zhí)峁┫嚓P(guān)信息告之我們,我們將及時(shí)溝通與處理。本站內(nèi)容系統(tǒng)采集于網(wǎng)絡(luò),涉及言論、版權(quán)與本站無(wú)關(guān)。