待發短信

在線客服
產品支持 短信寶客服
合作渠道 渠道合作
服務咨詢

4001-021-502

工作時間

9:00-18:00

TinyShop新增短信寶短信接口

Tinshop是一套企業級的商城系統,產品靈活,易于進行二次開發。今天小編就以新增短信接口為例,給大家講解一下如何進行二次開發,使用的短信接口是我們短信寶短信群發平臺的短信接口,我們短信寶短信群發平臺的接口非常穩定,發送速度快,注冊就送測試短信,推薦大家使用。

首先打開項目:\protected\classes\Menu.php文件,增加一下代碼

?
1
2
'/admin/config_sms'=>array('name'=>'短信配置','parent'=>'config'),
   

然后打開項目:\protected\classes\文件夾,新增一個文件Sms.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
<?php
 
class Sms
{
    private $option array();
 
 
    public function __construct() {
        $this->init();
    }
 
 
    public function init() {
        $config = Config::getInstance();
        $sms $config->get('sms');
        $this->option = $sms;
    }
        public function send_sms($phone$body$senderInfo '' ){
            $statusStr array(
                "0" => "短信發送成功",
                "-1" => "參數不全",
                "-2" => "服務器空間不支持,請確認支持curl或者fsocket,聯系您的空間商解決或者更換空間!",
                "30" => "密碼錯誤",
                "40" => "賬號不存在",
                "41" => "余額不足",
                "42" => "帳戶已過期",
                "43" => "IP地址限制",
                "50" => "內容含有敏感詞"
            );
            $user $this->option['email_host'];
            $pass $this->option['email_ssl'];
            $sing $this->option['email_port'];
            $smsapi "http://api.smsbao.com/";
            $user $user//短信平臺帳號
            $pass = md5($pass); //短信平臺密碼
            $content '【'.$sing.'】'.$body;//要發送的短信內容
            $phone $phone;//要發送短信的手機號碼
            $sendurl $smsapi."sms?u=".$user."&p=".$pass."&m=".$phone."&c=".urlencode($content);
            $result =file_get_contents($sendurl) ;
            echo $result;
        }
 
 
}
   

打開項目:\protected\controllers\ucenter.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
public function send_objcode()
    {
        $account = Req::args('account');
        $activateObj = Session::get('activateObj');
        $sendAble = true;
        $haveTime = 120;
        if(isset($activateObj['time']) ){
            $time $activateObj['time'];
            $haveTime = time() - $time;
            if($haveTime <= 120){
                $sendAble = false;
            }
        }
        if($sendAble){
            $code = CHash::random(6,'int');
            if(Validator::email($account)){
                $mail new Mail();
                $flag $mail->send_email($account,'您的郵箱身份核實驗證碼',"核實郵箱驗證碼:".$code);
                if(!$flag){
                    $info array('status'=>'fail','msg'=>'郵件發送失敗請聯系管理人員');
                }else{
                    $activateObj array('time'=>time(),'code'=>$code,'obj'=>$account);
                    Session::set('activateObj',$activateObj);
                    $info array('status'=>'success');
                }
            }else if(Validator::mobi($account)){
                $sms new Sms();
                $flag $sms->send_sms($account,"您的手機核實手機驗證碼:".$code);
                if($flag == 0){
$activateObj array('time' => time(), 'code' => $code'obj' => $account);
                    Session::set('activateObj'$activateObj);
                    $info array('status' => 'success','msg'=>'短信發送成功');        
               }else {
                    $info array('status'=>'fail','msg'=>'手機發送失敗請聯系管理人員');
                }
//                $sms = SMS::getInstance();
//                if($sms->getStatus()){
//                    $result = $sms->sendCode($account,$code);
//                    if($result['status']=='success'){
//                        $info = array('status'=>'success','msg'=>$result['message']);
//                        $activateObj = array('time'=>time(),'code'=>$code,'obj'=>$account);
//                        Session::set('activateObj',$activateObj);
//                        $info = array('status'=>'success');
//                    }else{
//                        $info = array('status'=>'fail','msg'=>$result['message']);
//                    }
//                }else{
//                    $info = array('status'=>'fail','msg'=>'系統沒有開啟手機驗證功能!');
//                }
            }else{
                $info array('status'=>'fail','msg'=>'除郵箱及手機號外,不支持發送!');
            }
        }else{
            $info array('status'=>'fail','msg'=>'還有'.(120 - $haveTime).'秒后可發送!');
        }
        $info['haveTime'] = (120 - $haveTime);
        echo JSON::encode($info);
    }
   

打開項目:\protected\services\config.php,增加一下代碼

?
1
2
3
4
5
6
7
8
9
10
11
12
public function sms()
    {
        $sms array(
            'email_sendtype'=>Req::args('sms_sendtype'),
            'sms_account'=>Req::args('sms_account'),
            'sms_password'=>Req::args('sms_password'),
            'sms_sing'=>Req::args('sms_sing'),
        );
        $this->config->set('sms',$sms);
        return true;
    }
   

經過上面的替換,短信寶的短信平臺已經替換成功了,可以正常使用了。

報備一下短信寶的VIP模板,這樣就可以走短信寶的優質通道了,即便遇到敏感文字我們都不會人工審核,短信內容3~5秒就可送達。

另外:我們已經開發好完整的ThinyShop系統短信寶插件,點擊此鏈接 下載及查看安裝流程。

 
開源插件
文章標簽
江苏11选5高频彩