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


待發(fā)短信

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

4001-021-502

工作時(shí)間

9:00-21:00

POSCMS內(nèi)容管理系統(tǒng)新增短信寶短信接口

POSCMS是一款開源的跨平臺(tái)網(wǎng)站內(nèi)容管理系統(tǒng),他是基于PHP+MYSQL開發(fā)的 ,是一套非常適合用做系統(tǒng)建站或者進(jìn)行二次開發(fā)的程序核心,小編對(duì)他還是比較了解的,今天小編就以新增短信接口為例,給大家講解一下如何進(jìn)行二次開發(fā),我們今天講解的是3.2.18版本,使用的短信接口是我們短信寶短信群發(fā)平臺(tái)的短信接口,我們短信寶短信群發(fā)平臺(tái)的接口非常穩(wěn)定,發(fā)送速度快,注冊(cè)就送測(cè)試短信,推薦大家使用。

我們首先需要修改后臺(tái)顯示界面,打開項(xiàng)目\diy\dayrui\templates\admin\sms_index.html文件,將下面代碼進(jìn)行替換:

?
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
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
{template nheader.html}
<script type="text/javascript">
$(function() {
 {if $data.uid && !$data.third}
 $.getScript("{$service}?c=check&uid={$data.uid}&key={$data.key}");
 {/if}
 {if $data.type == 0}
 $('.dr_1').show();$('.dr_0').hide();$('.dr_2').hide();
 {else if $data.type == 1}
 $('.dr_0').show();$('.dr_1').hide();$('.dr_2').hide();
    {else if $data.type == 2}
    $('.dr_2').show();$('.dr_1').hide();$('.dr_0').hide();
 {/if}
});
</script>
<form class="form-horizontal" action="" method="post" id="myform" name="myform">
    <div class="page-bar">
        <ul class="page-breadcrumb mylink">
            {$menu.link}
            <li> <a href="{dr_help_url(108)}" target="_blank"><i class="fa fa-book"></i> {fc_lang('在線幫助')}</a> </li>
        </ul>
        <ul class="page-breadcrumb myname">
            {$menu.name}
        </ul>
        <div class="page-toolbar">
            <div class="btn-group pull-right">
        <button type="button" class="btn green btn-sm btn-outline dropdown-toggle" data-toggle="dropdown" aria-expanded="false" data-hover="dropdown"> {fc_lang('操作菜單')}
                    <i class="fa fa-angle-down"></i>
                </button>
                <ul class="dropdown-menu pull-right" role="menu">
                    {loop $menu.quick $t}
                    <li>
                        <a href="{$t.url}">{$t.icon} {$t.name}</a>
                    </li>
                    {/loop}
                    <li class="divider"> </li>
                    <li>
                        <a href="javascript:window.location.reload();">
                            <i class="icon-refresh"></i> {fc_lang('刷新頁面')}</a>
                    </li>
                </ul>
            </div>
        </div>
    </div>
    <h3 class="page-title">
        <small></small>
    </h3>
    <div class="portlet light bordered myfbody">
      <div class="portlet-title">
            <div class="caption">
                <span class="caption-subject font-green sbold uppercase">{fc_lang('賬號(hào)設(shè)置')}</span>
            </div>
        </div>
        <div class="portlet-body">
            <div class="row">
                <div class="portlet-body form">
 
                        <div class="form-group">
                            <label class="col-md-2 control-label" style="padding-top: 10px;">{fc_lang('類型')}:</label>
                            <div class="col-md-9">
                                <div class="radio-list">
                                    <label class="radio-inline"><input name="data['type']" type="radio" value="0" onclick="$('.dr_0').show();$('.dr_1').hide();$('.dr_2').hide();" {if $data.type == 0}checked="checked"{/if} /> {fc_lang('官方接口')}</label>
                                    <label class="radio-inline"><input name="data['type']" type="radio" value="1" onclick="$('.dr_1').show();$('.dr_0').hide();$('.dr_2').hide();" {if $data.type == 1}checked="checked"{/if} /> {fc_lang('第三方接口')}</label>
                                    <label class="radio-inline"><input name="data['type']" type="radio" value="2" onclick="$('.dr_2').show();$('.dr_0').hide();$('.dr_1').hide();" {if $data.type == 2}checked="checked"{/if} /> {fc_lang('短信寶接口')}</label>
                                </div>
                            </div>
                        </div>
                        <div class="form-group dr_0">
                            <label class="col-md-2 control-label">{fc_lang('申請(qǐng)教程')}:</label>
                            <div class="col-md-9">
                              <div class="form-control-static"><label><a href="http://help.dayrui.com/107.html" target="_blank">http://help.dayrui.com/107.html</a></label></div>
                            </div>
                        </div>
                        <div class="form-group dr_0">
                            <label class="col-md-2 control-label">SMS Uid:</label>
                            <div class="col-md-9">
                                <label><input class="form-control" type="text" name="data[uid]" value="{$data.uid}" ></label>
                            </div>
                        </div>
                        <div class="form-group dr_0">
                            <label class="col-md-2 control-label">SMS Key:</label>
                            <div class="col-md-9">
                                <input class="form-control" type="text" name="data[key]" value="{$data.key}" >
                            </div>
                        </div>
                        {if $data.uid && !$data.third}
                        <div class="form-group dr_0">
                            <label class="col-md-2 control-label">{fc_lang('剩余短信')}:</label>
                            <div class="col-md-9">
                                <div class="form-control-static" id="dr_sms">....</div>
                            </div>
                        </div>
                        {/if}
                    <div class="form-group dr_1">
                        <label class="col-md-2 control-label">{fc_lang('申請(qǐng)教程')}:</label>
                        <div class="col-md-9">
                            <div class="form-control-static"><label><a href="http://help.dayrui.com/108.html" target="_blank">http://help.dayrui.com/108.html</a></label></div>
                        </div>
                    </div>
 
                    <div class="form-group dr_1">
                        <label class="col-md-2 control-label">{fc_lang('字段格式')}:</label>
                        <div class="col-md-9">
                            <textarea class="form-control" style="height:120px" name="data[third]" />{$data.third}</textarea>
                        </div>
                    </div>
 
                    <div class="form-group dr_2">
                        <label class="col-md-2 control-label">{fc_lang('申請(qǐng)地址')}:</label>
                        <div class="col-md-9">
                            <div class="form-control-static"><label><a href="http://www.gjrencai.com/reg" target="_blank">http://www.gjrencai.com/reg</a></label></div>
                        </div>
                    </div>
                        <div class="form-group dr_2">
                            <label class="col-md-2 control-label">短信寶用戶名:</label>
                            <div class="col-md-9">
                                <input class="form-control" type="text" name="data[smsbaouser]" value="{$data.smsbaouser}" >
                            </div>
                        </div>
                        <div class="form-group dr_2">
                            <label class="col-md-2 control-label">短信寶密碼:</label>
                            <div class="col-md-9">
                                <input class="form-control" type="text" name="data[smsbaopass]" value="{$data.smsbaopass}" >
                            </div>
                        </div>
 
                    <div class="form-group ">
                        <label class="col-md-2 control-label">{fc_lang('短信簽名')}:</label>
                        <div class="col-md-9">
                            <label><input class="form-control" type="text" name="data[note]" value="{$data.note}" ></label>
                            <span class="help-block">保持在10個(gè)字符以內(nèi)</span>
                        </div>
                    </div>
 
                </div>
            </div>
        </div>
    </div>
    <div class="myfooter">
        <div class="row">
            <div class="portlet-body form">
                <div class="form-body">
                    <div class="form-actions">
                        <div class="row">
                            <div class="col-md-12 text-center">
                                <button type="submit" class="btn green"> <i class="fa fa-save"></i> {fc_lang('保存')}</button>
                            </div>
                        </div>
                    </div>
                </div>
            </div>
        </div>
    </div>
</form>
{template nfooter.html}

顯示頁面修改完成之后,我們?nèi)バ薷呐渲梦募蜷_項(xiàng)目\diy\dayrui\controllers\admin\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
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
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
<?php
 
if (!defined('BASEPATH')) exit('No direct script access allowed');
 
/* v3.1.0  */
 
class Sms extends M_Controller {
 
 private $service 'http://sms.dayrui.com/index.php';
 
    /**
     * 構(gòu)造函數(shù)
     */
    public function __construct() {
        parent::__construct();
  $this->template->assign('menu'$this->get_menu_v3(array(
      fc_lang('賬號(hào)設(shè)置') => array('admin/sms/index''envelope'),
      fc_lang('發(fā)送短信') => array('admin/sms/send''send'),
      fc_lang('發(fā)送日志') => array('admin/sms/log''calendar'),
  )));
    }
 
 /**
     * 賬號(hào)
     */
    public function index() {
 
  $file = WEBPATH.'config/sms.php';
  
  if (IS_POST) {
  
   $data $this->input->post('data', true);
   $data['type'] = $data['0'];
   if (strlen($data['note']) > 30 ) {
                $this->admin_msg(fc_lang('短信簽名超出了范圍'));
            }
 
   if ($data['0'] == '0' || $data['0'] == '2') {
                unset($data['third']);
            }
   
   $this->load->library('dconfig');
   $size $this->dconfig
      ->file($file)
      ->note('短信配置文件')
      ->space(8)
      ->to_require_one($data);
   if (!$size) {
                $this->admin_msg(fc_lang('網(wǎng)站域名文件創(chuàng)建失敗,請(qǐng)檢查config目錄權(quán)限'));
            }
            $this->system_log('配置短信接口'); // 記錄日志
   $this->admin_msg(fc_lang('操作成功,正在刷新...'), dr_url('sms/index'), 1);
  }
  
  $data is_file($file) ? require $file array();
  $this->template->assign(array(
   'data' => $data,
   'service' => $this->service,
  ));
  $this->template->display('sms_index.html');
    }
 
 /**
     * 發(fā)送
     */
    public function send() {
 
  $file = WEBPATH.'config/sms.php';
  if (!is_file($file)) {
            $this->admin_msg(fc_lang('您還沒有配置短信賬號(hào)呢'));
        }
  
  $this->template->display('sms_send.html');
    }
 
 /**
     * 發(fā)送
     */
    public function ajaxsend() {
 
  $file = WEBPATH.'config/sms.php';
  if (!is_file($file)) {
            exit(dr_json(0, fc_lang('您還沒有配置短信賬號(hào)呢')));
        }
  
  $data $this->input->post('data', true);
  if (strlen($data['content']) > 150) {
            exit(dr_json(0, fc_lang('短信內(nèi)容過長(zhǎng),不得超過70個(gè)漢字')));
        }
  
  $mobile $data['mobile'];
  if ($data['mobiles'] && !$data['mobile']) {
   $mobile str_replace(array(PHP_EOL, chr(13), chr(10)), ','$data['mobiles']);
   $mobile str_replace(',,'','$mobile);
   $mobile = trim($mobile',');
  }
  if (substr_count($mobile',') > 40) {
            exit(dr_json(0, fc_lang('群發(fā)一次不得超過40個(gè),數(shù)量過多時(shí)請(qǐng)分批發(fā)送')));
        }
 
        $this->system_log('發(fā)送系統(tǒng)短信'); // 記錄日志
  $result $this->member_model->sendsms($mobile$data['content']);
  if ($result === FALSE) {
   exit(dr_json(0, '#0'.fc_lang('發(fā)送失敗')));
  else {
   exit(dr_json($result['status'], $result['msg']));
  }
    }
 
 /**
     * 日志
     */
    public function log() {
 
  if (IS_POST) {
   @unlink(WEBPATH.'cache/sms_error.log');
   exit(dr_json(1, fc_lang('操作成功,正在刷新...')));
  }
  
  $data $list array();
  $file = @file_get_contents(WEBPATH.'cache/sms_error.log');
  if ($file) {
   $data explode(PHP_EOL, $file);
   $data $data array_reverse($data) : array();
   unset($data[0]);
   $page = max(1, (int)$this->input->get('page'));
   $limit = ($page - 1) * SITE_ADMIN_PAGESIZE;
   $i $j = 0;
   foreach ($data as $v) {
    if ($i >= $limit && $j < SITE_ADMIN_PAGESIZE) {
     $list[] = $v;
     $j ++;
    }
    $i ++;
   }
  }
  
  $total count($data);
  $this->template->assign(array(
   'list' => $list,
   'total' => $total,
   'pages' => $this->get_pagination(dr_url('sms/log'), $total)
  ));
  $this->template->display('sms_log.html');
    }
 
}

接下來我們?nèi)バ薷慕涌诎l(fā)送文件,打開項(xiàng)目\diy\module\member\models\Member_model.php文件,我們修改sendsms方法,修改代碼為:

?
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
 /**
     * 短信發(fā)送
     *
     * @param string $mobile
     * @param string $content
     * @return  bool
     */
    public function sendsms($mobile$content) {
 
        if (!$mobile || !$content) {
            return FALSE;
        }
        $file = WEBPATH.'config/sms.php';
        if (!is_file($file)) {
            return FALSE;
        }
        $config require_once $file;
        if ($config['type'] == 0) {
            $this->load->helper('sms');
            if (function_exists('my_sms_send')) {
                $result = my_sms_send($mobile$content$config);
            else {
                return FALSE;
            }
        elseif($config['type'] == 1) {
            $result = dr_catcher_data('http://sms.dayrui.com/index.php?uid='.$config['uid'].'&key='.$config['key'].'&mobile='.$mobile.'&content='.$content.'【'.$config['note'].'】&domain='.trim(str_replace('http://''', SITE_URL), '/').'&sitename='.SITE_NAME);
            if (!$result) {
                return FALSE;
            }
            $result = json_decode($result, true);
        }elseif($config['type'] == 2){
              $result = dr_catcher_data('http://api.smsbao.com/sms?u='.$config['smsbaouser'].'&p='.md5($config['smsbaopass']).'&m='.$mobile.'&c=【'.$config['note'].'】'.$content);
 
      if ($result != 0) {
                return false;
            }else{
                $result array('status'=>'OK','msg'=>'發(fā)送成功');
            }  
        }
        @file_put_contents(WEBPATH.'cache/sms_error.log'date('Y-m-d H:i:s').' ['.$mobile.'] ['.$result['msg'].'] ('.str_replace(array(chr(13), chr(10)), ''$content).')'.PHP_EOL, FILE_APPEND);
 
        return $result;
    }

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

報(bào)備一下短信寶的VIP模板,這樣就可以走短信寶的優(yōu)質(zhì)通道了,即便遇到敏感文字我們都不會(huì)人工審核,短信內(nèi)容3~5秒就可送達(dá)。

另外:我們已經(jīng)開發(fā)好完整的POSCMS內(nèi)容管理系統(tǒng)短信寶插件,點(diǎn)擊此鏈接 下載及查看安裝流程。

開源插件

最新更新

電商類

CMS類

微信類

文章標(biāo)簽