待发短信

在线客服
产品支持 短信宝客服
合作渠道 渠道合作
服务咨询

4001-021-502

工作时间

9:00-18:00

CSCMS(程氏cms)短信接口替换

CSCMS是一款多功能网络信息管理系统, 采用PHP5+MYSQL做为技术基础进行开发。采用OOP(面向对象)方式进行基础运行框架搭建。模块化开发方式做为功能开发形式。框架易于功能扩展,代码维护,优秀的二次开发能力。今天我就为大家做一次替换短信接口的工作。我们短信宝短信群发平台非常稳定,短信发送速度快,注册还送测试短信,用户体验非常好,推荐大家使用。

接下来就为大家详细的说明一下开发步骤,首先我们要替换后台的显示界面,在项目/cscms/tpl/admin/sms_setting.html,修改36~55行左右,代码如下:

?
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
<form action="<?=site_url('sms/save')?>" method="post">
   <div id="tab1" class="tabson">
        <ul class="forminfo">
           <li><label><?=L('tpl_23')?></label><a style="float:left;margin-top:7px;" href="http://www.smsbao.com" target="sms">http://www.smsbao.com</a></li>
            <?php
              $CS_Sms_ID=CS_Sms_ID;
              $CS_Sms_Key=CS_Sms_Key;
               if(!empty($CS_Sms_ID) && !empty($CS_Sms_Key)){
                echo '<li><label>'.L('tpl_24').'</label><b style="float:left;margin-top:7px;" id="sms">'.L('tpl_25').'</b><a style="float:left;margin-top:7px;margin-left:30px;color:#0000ff;" href="http://www.smsbao.com" target="sms">'.L('tpl_26').'</a></li>';
                        }
            ?>
           <li><label><?=L('tpl_27')?></label><input name="CS_Sms_ID" type="text" class="dfinput" value="<?=CS_Sms_ID?>" style="width:245px;"/><b>*</b>填写短信宝的用户名</li>
           <li><label><?=L('tpl_28')?></label><input name="CS_Sms_Key" type="text" class="dfinput" value="<?=substr(CS_Sms_Key,0,4)?>********" style="width:245px;"/><b>*</b>填写短信宝的密码</li>
           <li><label><?=L('tpl_30')?></label><input name="CS_Sms_Name" type="text" class="dfinput" value="<?=CS_Sms_Name?>" style="width:245px;"/><b>*</b><?=L('tpl_31')?></li>
        </ul>
   </div
   <ul class="forminfo">
     <li><label>&nbsp;</label><input name="Submit" type="Submit" class="btn" value="<?=L('setting_57')?>"/></li>
   </ul>
</form>

经过以上替换后台的显示界面都是短信宝了,我们接下来进行发送短信的业务代码,在项目/cscms/app/libraries/Smstel.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
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
<?php
/**
 * @Cscms 4.x open source management system
 * @copyright 2009-2015 chshcms.com. All rights reserved.
 * @Author:Cheng Jie
 * @Dtime:2014-08-21
 */
 
if (!defined('BASEPATH')) exit('No direct script access allowed');
 
/**
 * 手机短信类
 */
class Smstel {
 
    function __construct ()
    {
       $this->appid   = CS_Sms_ID;  //商户ID
       $this->appkey  = CS_Sms_Key;  //商户KEY
       $this->curl    = 'http://api.smsbao.com/sms?';
    }
 
    //发送
    function add($tel,$neir){
       $param['u']=$this->appid;
       $param['p']=md5($this->appkey);
       $param['m']=trim($tel);
       $param['c']='【'.CS_Sms_Name.'】'.$neir;
       $param['c']=iconv('GBK''UTF-8'$param['c']);
       //iconv('GB2312', 'UTF-8', $param['c']);
       $url=$this->curl.(http_build_query($param));
       //电话号码是否为多个
       $send_num=0;
       if(strstr($tel,",")){
           $tel_array=explode(',',$tel);
           foreach($tel_array as $key=>$val){
               $msg=file_get_contents($url);
               if($msg=='0'){
                   $send_num++;
               }
           }
       }else{
           $msg=file_get_contents($url);
           if($msg=='0'){
               $send_num++;
           }
       }
       $send_num=$this->error($send_num);
       return $send_num;
    }
 
    //发送注册验证码
    function seadd($tel){
       $tel_time=$_SESSION['tel_time'];
       if($tel_time && $tel_time+60>time()){
           return 'addok'//发送时间没有过60秒
       }
       $code=random_string('nozero',4);
       $_SESSION['tel_code']=$code;
       $_SESSION['tel_time']=time();          
 
       $neir='欢迎注册,您的验证码是'.$code.',请尽快完成验证。(如非本人操作,可不予理会)';
       $param['u']=$this->appid;
       $param['p']=md5($this->appkey);
       $param['m']=trim($tel);
       $param['c']='【'.CS_Sms_Name.'】'.$neir;
       $param['c']=iconv('GBK''UTF-8'$param['c']);
       $url=$this->curl.(http_build_query($param));
       $msg=file_get_contents($url);
       $msg=$this->error($msg);
       return $msg;
    }
 
    //查询余额
    function balance(){
       $rmb=file_get_contents("http://www.smsbao.com/query?u=".$this->appid."&p=".md5($this->appkey));
       $array=explode(',',$rmb);
       return $array[1];
    }
 
    //查询记录
    function lists($len=12,$p=1){
       $get='lists?uid='.$this->appid;
       $get.='&key='.$this->appkey;
       $get.='&len='.$len;
       $get.='&p='.$p;
       $url=$this->curl.$get;
       $str=htmlall($url);
       return $str;
    }
 
    //错误提示
    function error($msg){
        if(empty($msg)){
             return L('curl_err');
        }
        return $msg;
    }
}

好了,经过以上的替换,短信宝的短信平台已经替换成功了,可以正常使用了。最后我们进行发送测试。

报备一下短信宝的VIP模板,这样就可以走短信宝的优质通道了,并且免审核了,短信内容3~5秒就可送达。
 
开源插件
文章标签