91成人在线播放_欧美一区二区视频在线观看_91精品国产高清久久久久久_国产精品久久亚洲不卡4k岛国


待發(fā)短信

在線客服
產(chǎn)品支持 短信寶客服
合作渠道 渠道合作
服務(wù)咨詢(xún)

4001-021-502

工作時(shí)間

9:00-21:00

WSTMall開(kāi)源商城短信接口替換

WSTMall開(kāi)源商城是一款基于ThinkPHP開(kāi)發(fā)的多商戶(hù)新零售開(kāi)源系統(tǒng),因?yàn)槭褂玫氖荰hinkPHP框架,所以二次開(kāi)發(fā)比較容易,小編對(duì)此系統(tǒng)還比較了解,今天小編就以替換短信接口為例為大家講解一下如何進(jìn)行二次開(kāi)發(fā),我們今天講解的是1.9.5版本,我們使用的短信接口是我們短信寶短信群發(fā)平臺(tái)的短信接口,我們短信寶短信群發(fā)平臺(tái)非常穩(wěn)定,發(fā)送速度快,推薦大家使用。

因?yàn)槎绦排渲檬菍?xiě)在數(shù)據(jù)庫(kù)中的所以我們先去修改數(shù)據(jù)庫(kù)中的接口信息,我們?cè)?strong>項(xiàng)目\Apps\Home\Action 下建一個(gè)文件,取名叫SmsbaoAction.class.php,文件代碼為:

?
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
<?php
namespace Home\Action;
use think\Db;
header("Content-type:text/html;charset=utf-8");
/**
* 短信寶短信插件
*/
class SmsbaoAction extends BaseAction
{
        
        public function smsbao()
        {
                $smsbao = M('sys_configs');
                $data['fieldName'] = '短信寶賬號(hào)';
                $data['fieldTips'] = '還沒(méi)有帳號(hào)?請(qǐng)點(diǎn)擊<a href="http://www.gjrencai.com/reg" style="color:red;">注冊(cè)</a>';
                $smsbao->where('fieldCode="smsKey"')->save($data);
                
                echo '短信寶插件安裝成功,請(qǐng)刪除Apps\home\action\SmsbaoAction.class.php文件';
        }
}

新建完成后我們需要運(yùn)行一下修改數(shù)據(jù)庫(kù),我們?cè)L問(wèn) 域名/index.php?m=home&c=Smsbao&a=smsbao,看到短信寶插件安裝成功,請(qǐng)刪除Apps\home\action\SmsbaoAction.class.php文件 即為修改成功,修改成功我們?nèi)バ薷慕涌诎l(fā)送文件,打開(kāi)項(xiàng)目\Apps\Common\Common\function.php,添加以下代碼:

?
1
2
3
4
5
6
7
8
9
10
11
12
13
14
/**
 * @param string $phoneNumer  手機(jī)號(hào)碼
 * @param string $content     短信內(nèi)容
 */
function SmsbaoSMS($phoneNumer,$content){
        $url 'http://api.smsbao.com/sms?u='.$GLOBALS['CONFIG']['smsKey'].'&p='.md5($GLOBALS['CONFIG']['smsPass']).'&m='.$phoneNumer.'&c='.$content;
        $ch=curl_init($url);
    curl_setopt($ch, CURLOPT_RETURNTRANSFER, 1);//設(shè)置否輸出到頁(yè)面
    curl_setopt($ch, CURLOPT_CONNECTTIMEOUT, 30 ); //設(shè)置連接等待時(shí)間
    curl_setopt($ch, CURLOPT_ENCODING, "gzip" );
    $data=curl_exec($ch);
    curl_close($ch);
    return $data;
}

另一處短信接口文件,打開(kāi)項(xiàng)目\Upgrade\Upgrade\Apps\Common\Common\function.php,添加一下代碼:

?
1
2
3
4
5
6
7
8
9
10
11
12
13
14
/**
 * @param unknown_type $phoneNumer
 * @param unknown_type $content
 */
function SmsbaoSMS($phoneNumer,$content){
        $url 'http://api.smsbao.com/sms?u='.$GLOBALS['CONFIG']['smsKey'].'&p='.md5($GLOBALS['CONFIG']['smsPass']).'&m='.$phoneNumer.'&c='.$content;
        $ch=curl_init($url);
    curl_setopt($ch, CURLOPT_RETURNTRANSFER, 1);//設(shè)置否輸出到頁(yè)面
    curl_setopt($ch, CURLOPT_CONNECTTIMEOUT, 30 ); //設(shè)置連接等待時(shí)間
    curl_setopt($ch, CURLOPT_ENCODING, "gzip" );
    $data=curl_exec($ch);
    curl_close($ch);
    return $data;
}

接下來(lái)我們?nèi)バ薷恼{(diào)用短信接口的代碼,打開(kāi)項(xiàng)目\Apps\Home\Model\LogSmsModel.class.php文件,將以下代碼替換:

?
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
<?php
namespace Home\Model;
/**
 * ============================================================================
 * WSTMall開(kāi)源商城
 * 官網(wǎng)地址:http://www.wstmall.net
 * 聯(lián)系QQ:707563272
 * ============================================================================
 * 短信服務(wù)類(lèi)
 */
class LogSmsModel extends BaseModel {
        /**
         * 插入并發(fā)送短訊記錄
         */
        public function sendSMS($smsSrc,$phoneNumber,$content,$smsFunc,$verfyCode,$imgVerfy=1){
                $USER = session('WST_USER');
                $userId empty($USER)?0:$USER['userId'];
                $m = M('log_sms');
                $ip = get_client_ip();
            //檢測(cè)短信驗(yàn)證碼驗(yàn)證是否正確
            if($GLOBALS['CONFIG']['smsVerfy']==1 && $imgVerfy==1){
                    $smsverfy = I('smsVerfy');
                    $verify new \Think\Verify(array('reset'=>false));    
                    $rs =  $verify->check($smsverfy);
                        if(!$rs){
                                return array('status'=>-29999,'msg'=>'驗(yàn)證碼不正確!');
                        }
                }
                //檢測(cè)是否超過(guò)每日短信發(fā)送數(shù)
                $date date('Y-m-d');
                $sql = 'select count(smsId) counts,max(createTime) createTime from __PREFIX__log_sms
                          where smsPhoneNumber='.$phoneNumber.' and createTime>"'.$date.' 00:00:00" and createTime<="'.$date.' 23:59:59"';
                $smsRs $this->queryRow($sql);
                if($smsRs['counts']>(int)$GLOBALS['CONFIG']['smsLimit']){
                        return array('status'=>-20000,'msg'=>'請(qǐng)勿頻繁發(fā)送短信驗(yàn)證!');
                }
                if($smsRs['createTime'] !='' && ((time()-strtotime($smsRs['createTime']))<120)){
                        return array('status'=>-20001,'msg'=>'請(qǐng)勿頻繁發(fā)送短信驗(yàn)證!');
                }
                //檢測(cè)IP是否超過(guò)發(fā)短信次數(shù)
            $sql = 'select count(smsId) counts,max(createTime) createTime from __PREFIX__log_sms
                          where smsIP="'.$ip.'" and createTime>"'.$date.' 00:00:00" and createTime<="'.$date.' 23:59:59"';
                $ipRs $this->queryRow($sql);
                if($ipRs['counts']>(int)$GLOBALS['CONFIG']['smsLimit']){
                        return array('status'=>-20003,'msg'=>'請(qǐng)勿頻繁發(fā)送短信驗(yàn)證!');
                }
                if($ipRs['createTime']!='' && ((time()-strtotime($ipRs['createTime']))<120)){
                        return array('status'=>-20004,'msg'=>'請(qǐng)勿頻繁發(fā)送短信驗(yàn)證!');
                }
                
                $code = SmsbaoSMS($phoneNumber,$content);
            $data array();
                $data['smsSrc'] = $smsSrc;
                $data['smsUserId'] = $userId;
                $data['smsPhoneNumber'] = $phoneNumber;
                $data['smsContent'] = $content;
                $data['smsReturnCode'] = $code;
                $data['smsCode'] = $verfyCode;
                $data['smsIP'] = $ip;
                $data['smsFunc'] = $smsFunc;
                $data['createTime'] = date('Y-m-d H:i:s');
                $m->add($data);
                if(intval($code) == 0){
                        return array('status'=>1,'msg'=>'短信發(fā)送成功!');
                }else{
                        return array('status'=>-1,'msg'=>'短信發(fā)送失敗!');
                }
        }
}

好了,經(jīng)過(guò)以上的替換,短信寶的短信平臺(tái)已經(jīng)替換成功了,我們?nèi)ミM(jìn)行發(fā)送測(cè)試:

報(bào)備一下短信寶的VIP模板,這樣就可以走短信寶的優(yōu)質(zhì)通道了,并且免審核了,短信內(nèi)容3~5秒就可送達(dá)。
開(kāi)源插件

最新更新

電商類(lèi)

CMS類(lèi)

微信類(lèi)

文章標(biāo)簽