精品深夜福利视频,日本中文字幕不卡,久久久久国产,av综合电影网站


待發(fā)短信

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

4001-021-502

工作時(shí)間

9:00-21:00

YzmCms_v7.3新增短信寶短信接口

YzmCMS是一款輕量級(jí)開源內(nèi)容管理系統(tǒng),它采用OOP(面向?qū)ο螅┓绞阶灾鏖_發(fā)的框架。基于PHP+Mysql架構(gòu),并采用MVC框架式開發(fā)的一款高效開源的內(nèi)容管理系統(tǒng),可運(yùn)行在Linux、Windows、MacOSX、Solaris等各種平臺(tái)上。便于進(jìn)行二次開發(fā),小編對(duì)這款軟件還是比較了解的,小編今天就以v7.3版新增短信接口為例為大家講解一下如何進(jìn)行二次開發(fā),我們使用的短信接口是我們短信寶短信群發(fā)平臺(tái)的短信接口,我們短信寶短信群發(fā)平臺(tái)非常穩(wěn)定,發(fā)送速度快,注冊(cè)就送測(cè)試短信,推薦大家使用。
1.打開項(xiàng)目:\application\admin\view\system_set.html394~413行左右增加短信頁面代碼

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
<div class="tabCon">
                <div class="row cl">
                    <label class="form-label col-xs-4 col-sm-2">短信寶用戶名:</label>
                    <div class="formControls col-xs-8 col-sm-9">
                        <input type="text" name="smsbao_user" value="<?php echo $data["smsbao_user"];?>"  class="input-text" style="width:50%">
                    </div>
                </div>
                <div class="row cl">
                    <label class="form-label col-xs-4 col-sm-2">短信寶密碼:</label>
                    <div class="formControls col-xs-8 col-sm-9">
                        <input type="text" name="smsbao_pass" value="<?php echo $data["smsbao_pass"];?>"  class="input-text" style="width:50%">
                    </div>
                </div>
                <div class="row cl">
                    <label class="form-label col-xs-4 col-sm-2">短信簽名:</label>
                    <div class="formControls col-xs-8 col-sm-9">
                        <input type="text" name="smsbao_sign" value="<?php echo $data["smsbao_sign"];?>"  class="input-text" style="width:50%">
                    </div>
                </div>
            </div>

2.打開項(xiàng)目:\application\member\view\member_set.html42~49行增加以下代碼

1
2
3
4
5
6
7
8
<div class="row cl">
                    <label class="form-label col-xs-4 col-sm-2">新會(huì)員注冊(cè)短信驗(yàn)證:</label>
                    <div class="formControls col-xs-8 col-sm-9">
                        <label class="label_radio"><input name="member_mobile" type="radio" <?php echo $data["member_mobile"]? 'checked' : '' ?> value="1"> 開啟</label>
                        <label class="label_radio"><input name="member_mobile" type="radio" <?php echo $data["member_mobile"]? '' : 'checked' ?> value="0"> 關(guān)閉</label>
                        <span style="color:#888"> [需填寫短信配置,且開啟后會(huì)員注冊(cè)審核功能無效]</span>
                    </div>
                </div>

3.打開項(xiàng)目:\application\member\view\default\register.html 注冊(cè)頁面添加手機(jī)號(hào)

1
2
3
4
5
<li><input type="text" class="input code" id="code" name="code" placeholder="請(qǐng)輸入驗(yàn)證碼"><img src="{U('api/index/code')}" onclick="this.src=this.src+'?'" id="codeimg" class="codeimg" title="看不清,換一張"></li>
                    <li><input type="text" class="input" name="mobile" id="mobile" value="" placeholder="請(qǐng)輸入手機(jī)號(hào)碼"></li>
                    {if $config['member_mobile'] == 1}
                    <li><input type="text" class="input code" name="mobile_code" value="" id="mobile_code" placeholder="請(qǐng)輸入短信驗(yàn)證碼"> <b class="huoqu" style="height: 28px; width: 120px;cursor: pointer;display: inline-block;margin-top: 10px;">獲取驗(yàn)證碼</b></li>
                    {/if}

4.打開項(xiàng)目:\application\member\view\default\register.html 同時(shí)最后也添加js代碼

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
<script type="text/javascript">
        var time = 0;
        var res = null;
 
        function sendTime(){
            clearTimeout(res); // 先清空一下倒計(jì)時(shí)資源。
            time--; // 倒計(jì)時(shí)時(shí)間遞減。
 
            // 如果倒計(jì)時(shí)到達(dá)0時(shí),則恢復(fù)按鈕原來的內(nèi)容
            if (time <= 0) {
                time = "獲取驗(yàn)證碼";
                $('.huoqu').text(time);
                clearTimeout(res);
                time = 0;
                return;
            }
 
            // 倒計(jì)時(shí)的內(nèi)容寫到按鈕里面
            $('.huoqu').text("剩余" + time + "秒");
            res = setTimeout("sendTime()", 1000);
        }
 
        $(function(){
            var flg = true;
            $('.huoqu').on('click',function(){
                var mobile = $("#mobile").val();
                var code = $("#code").val();
                var reg = /^1[3,4,5,7,8]\d{9}$/;
                var ret = false;
                if (code == '') {layer.msg('請(qǐng)?zhí)顚戲?yàn)證碼'); return ret;}
                if (!reg.test(mobile)) {layer.msg('手機(jī)號(hào)碼不正確');return ret;}
                console.log(time)
                if (0 == time) {
                    var data = {"code" : code, "mobile" : mobile};
                    console.log(data);
                    var err = "";
                    if (flg == true) {
                        flg = false;
                        // ajax提交請(qǐng)求
                        $.ajax({
                            type: "post",
                            url: "{U('public_checksms')}",
                            dataType: "html",
                            async: false,
                            data: data,
                            beforeSend: function(){
                                $("#dosubmit").attr({ disabled: "disabled" });
                            },
                            success: function(data){
                                console.log(data)
                                data = JSON.parse(data)
                                flg = true
                                if(data.status === 1){
                                    time = 60;
                                    sendTime();
                                    ret = true;
                                }
                                layer.msg(data.message);
                            }
                        });
                    }
                    $('.codeimg').click();
                    return ret;
                }
            })
 
        })
    </script>

5.打開項(xiàng)目:\application\member\controller\index.class.php 修改注冊(cè)方法

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
public function register(){ 
        $config = get_config();
        if($config['member_register'] == 0) showmsg('管理員關(guān)閉了新會(huì)員注冊(cè)!''stop');
 
        if(isset($_SESSION['_userid']) && $_SESSION['_userid']){
            showmsg(L('login_success'), U('member/index/init'), 1);
        }
 
        if(is_post()){
 
            $this->_check_code();
            if (empty($_SESSION['mobile_code']) || strtolower($_POST['mobile_code']) != $_SESSION['mobile_code']) {
                $_SESSION['mobile_code'] = '';
                return_json(array('status'=>0, 'message'=>'手機(jī)驗(yàn)證碼不正確'));
            }
            $member = D('member');
            $data array();
            $data['username'] = isset($_POST['username']) && is_username($_POST['username']) ? trim($_POST['username']) : return_json(array('status'=>0, 'message'=>L('user_name_format_error')));    
            $data['password'] = isset($_POST['password']) && is_password($_POST['password']) ? trim($_POST['password']) : return_json(array('status'=>0, 'message'=>L('password_format_error')));    
            $data['email'] = isset($_POST['email']) && is_email($_POST['email']) ? trim($_POST['email']) : return_json(array('status'=>0, 'message'=>L('mail_format_error')));        
            $data['mobile'] = isset($_POST['mobile']) && is_mobile($_POST['mobile']) ? trim($_POST['mobile']) : return_json(array('status'=>0, 'message'=>'手機(jī)號(hào)不正確'));
 
            $result $member->field('userid')->where(array('username'=>$_POST['username']))->find();
            if($result) return_json(array('status'=>0, 'message'=>'該用戶名已注冊(cè)!'));        
            $result $member->field('userid')->where(array('email'=>$_POST['email']))->find();
            if($result) return_json(array('status'=>0, 'message'=>'該郵箱已注冊(cè)!'));        
 
            $data['nickname'] = $data['username'];
            $data["password"] = password($data['password']);
            $data['regdate'] = $data['lastdate'] = SYS_TIME;
            $data['regip'] = $data['lastip'] = getip();
            $data['groupid'] = '1';
            $data['amount'] = '0.00';
            $data['point'] = $data['experience'] = $config['member_point'];     //經(jīng)驗(yàn)和積分
            $data['status'] = ($config['member_check'] || $config['member_email']) ? 0 : 1;        
            $data['userid'] = $member->insert($data, true);        
            if(!$data['userid']) return_json(array('status'=>0, 'message'=>'注冊(cè)失敗!'));        
 
            D('member_detail')->insert($data, true, false); //插入附表
 
            if($config['member_email']){
                //需要郵件驗(yàn)證
                $mail_code = string_auth($data['userid'].'|'.SYS_TIME, 'ENCODE', make_auth_key('email'));
                $url = U('member/index/register'array('mail_code'=>$mail_code'verify'=>1));
                $email_tpl = APP_PATH.ROUTE_M.DIRECTORY_SEPARATOR.'view'.DIRECTORY_SEPARATOR.(defined('MODULE_THEME') ? MODULE_THEME : C('site_theme')).DIRECTORY_SEPARATOR.'email_register_message.html' ;
                $message is_file($email_tpl) ? file_get_contents($email_tpl) : return_json(array('status'=>0, 'message'=>'郵件模板不存在,請(qǐng)聯(lián)系網(wǎng)站管理員!'));        
                $message str_replace(array('{site_name}','{url}','{username}','{email}'), array(get_config('site_name'),$url,$data['username'],$data['email']), $message);
                $res = sendmail($data['email'], '會(huì)員注冊(cè)郵箱驗(yàn)證'$message);
                if(!$res) return_json(array('status'=>0, 'message'=>'郵件發(fā)送失敗,請(qǐng)聯(lián)系網(wǎng)站管理員!'));
                return_json(array('status'=>1, 'message'=>'我們已將郵件發(fā)送到您的郵箱,請(qǐng)盡快完成驗(yàn)證!''url'=>U('member/index/login')));
            }elseif($config['member_check']){  
                //需要管理員審核
                return_json(array('status'=>1, 'message'=>'注冊(cè)成功,由于管理員開啟審核機(jī)制,請(qǐng)耐心等待!''url'=>U('member/index/login')));
            }
 
            $_SESSION['_userid'] = $data['userid'];
            $_SESSION['_username'] = $data['username'];
            set_cookie('_userid'$data['userid'], 0, true);
            set_cookie('_username'$data['username'], 0, true);
            set_cookie('_groupid'$data['groupid'], 0, true);        
            set_cookie('_nickname'$data['username']);
            return_json(array('status'=>1, 'message'=>'注冊(cè)成功!''url'=>U('member/index/init')));        
 
        }else{
            if(!empty($_GET['verify'])) {
                $mail_code = isset($_GET['mail_code']) ? trim($_GET['mail_code']) : showmsg(L('illegal_operation'), 'stop');
                $code_res = string_auth($mail_code'DECODE', make_auth_key('email'));
                $code_arr explode('|'$code_res);
                $userid = isset($code_arr[0]) ? intval($code_arr[0]) : showmsg(L('illegal_operation'), 'stop');
                $time = isset($code_arr[1]) ? $code_arr[1] : showmsg(L('illegal_operation'), 'stop');
                if($time+1800 > SYS_TIME){
                    D('member')->update(array('status' => 1, 'email_status' => 1),array('userid'=>$userid));
                    showmsg('郵箱驗(yàn)證成功!', U('member/index/login'), 2);
                }else{
                    showmsg('郵箱驗(yàn)證失敗,驗(yàn)證時(shí)間已失效!', U('member/index/register'));
                }
            }
            include template('member''register');
        }        
 
    }    

6.打開項(xiàng)目:\application\member\controller\reset.class.php 增加手機(jī)號(hào)重置類

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
 public function reset_mobile(){
//        session_start();
        $_SESSION['step'] = isset($_SESSION['step']) ? $_SESSION['step'] : 1;
 
        if ($_SESSION['step']==1 && isset($_POST['dosubmit'])) {
            if(empty($_SESSION['code']) || strtolower($_POST['code']) != $_SESSION['code']){
                $_SESSION['code'] = '';
                showmsg(L('code_error'), '', 1);
            }
 
            $data $this->_check($_POST['mobile'],2);
            if(empty($data['mobile'])) showmsg('您沒有綁定手機(jī),請(qǐng)選擇其他方式找回密碼!''stop');
            $ret = resetsms($data['mobile']);
            if ($ret != 0) {
                showmsg('短信發(fā)送失敗,請(qǐng)聯(lián)系網(wǎng)站管理員!');
            }
            $_SESSION['mobile'] = $data['mobile'];
            $_SESSION['userid'] = $data['userid'];
            $_SESSION['emc_times'] = 5;
            $_SESSION['step'] = 2;
        }elseif($_SESSION['step'] ==2 && isset($_POST['dosubmit'])){
            if($_SESSION['emc_times']=='' || $_SESSION['emc_times']<=0){
                $_SESSION['step'] = 1;
                showmsg("驗(yàn)證次數(shù)超過5次,請(qǐng)重新獲取短信驗(yàn)證碼!");
            }
 
            if(!empty($_SESSION['mobile_code']) && strtolower($_POST['mobile_code']) == strtolower($_SESSION['mobile_code'])){
                unset($_SESSION['emc_times']);
                $_SESSION['step'] = 3;
            }else{
                $_SESSION['emc_times'] = $_SESSION['emc_times']-1;
                showmsg('短信校驗(yàn)碼錯(cuò)誤!','',1);
            }
 
        }else if($_SESSION['step']==3 && isset($_POST['dosubmit'])){
 
            if(!isset($_POST['password']) || !is_password($_POST['password'])) showmsg(L('password_format_error'));
 
            D('member')->update(array('password' => password($_POST['password'])),array('userid'=>$_SESSION['userid']));
            unset($_SESSION['step'], $_SESSION['code'], $_SESSION['mobile_code'], $_SESSION['mobile'], $_SESSION['userid']);
            showmsg('更新密碼成功!', U('member/index/login'));
 
        }
 
        include template('member''reset_mobile');
    }

7.打開項(xiàng)目:\common\function\system.func.php 增加發(fā)送類

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
function sendsms($mobile)
{
    $config = get_config();
    $user $config['smsbao_user'];
    $pass $config['smsbao_pass'];
    $sign $config['smsbao_sign'];
    if (empty($user) && empty($pass) && empty($sign)) {
        return_json(array('status'=>0, 'message'=>'短信配置錯(cuò)誤'));
    }
    $code = rand(1000,9999);
    $content '【'.$sign.'】您的驗(yàn)證碼為:'.$code.'請(qǐng)妥善保存!';
 
    $result file_get_contents($url);
    if ($result == 0) {
        $_SESSION['mobile_code'] = $code;
        setcache($mobile, time(),60);
        return_json(array('status'=>1, 'message'=>'發(fā)送成功'));
    }else{
        return_json(array('status'=>0, 'message'=>'發(fā)送失敗'));
    }
}
function resetsms($mobile)
{
    $config = get_config();
    $user $config['smsbao_user'];
    $pass $config['smsbao_pass'];
    $sign $config['smsbao_sign'];
    if (empty($user) && empty($pass) && empty($sign)) {
        return 1;
    }
    $code = rand(1000,9999);
    $content '【'.$sign.'】您的驗(yàn)證碼為:'.$code.'請(qǐng)妥善保存!';
    $result file_get_contents($url);
    if ($result == 0) {
        $_SESSION['mobile_code'] = $code;
        return 0;
    }else{
        return 1;
    }
}

8.打開項(xiàng)目:\application\member\view\default\reset_type.html 增加手機(jī)找回密碼的方式

1
2
3
4
<div class="reset_type">
                <span>1.</span>通過手機(jī)找回密碼
                <a href="{U('reset_mobile')}">立即找回</a>
            </div>

好了經(jīng)過以上的添加,短信寶的短信平臺(tái)已經(jīng)替換成功了,可以正常使用了

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

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

開源插件

最新更新

電商類

CMS類

微信類

文章標(biāo)簽
精品深夜福利视频,日本中文字幕不卡,久久久久国产,av综合电影网站
性色av一区二区怡红| 久久精品91| 婷婷精品视频| 久久久久国产精品一区三寸| 麻豆mv在线观看| 自拍日韩欧美| 日韩超碰人人爽人人做人人添| 亚洲精品极品少妇16p| 久久天堂影院| 久久99青青| 欧美日韩国产综合网| 亚洲风情在线资源| 超级白嫩亚洲国产第一| 国产日韩一区二区三免费高清| 亚洲女人av| 免费观看在线色综合| 国产午夜久久| 影音先锋久久| 99精品网站| 日韩激情一区| 美女性感视频久久| 国产精品久久久久久久久久妞妞 | 欧美亚洲专区| 日韩亚洲精品在线观看| 亚洲欧美在线综合| 亚洲专区视频| 日本国产亚洲| 老司机精品视频网| 国产毛片精品| 日韩一区二区三区精品视频第3页| 先锋影音久久久| 日韩视频久久| 午夜在线一区| 欧美手机在线| 亚洲二区三区不卡| 国产婷婷精品| 日本视频在线一区| 日韩精品第一| 欧美激情91| 国产aⅴ精品一区二区四区| 久久精品免视看国产成人| 免费亚洲婷婷| 色乱码一区二区三区网站| 麻豆精品在线播放| 久久高清免费| 日韩精品一级中文字幕精品视频免费观看 | 日韩福利视频导航| 国产精品天堂蜜av在线播放| 久久午夜影院| 亚洲免费黄色| 精品国产亚洲日本| 亚洲永久av| 国产高清一区二区| 首页国产欧美日韩丝袜| 亚久久调教视频| 亚洲日本三级| 精品一区二区三区在线观看视频| 国产一区清纯| 日韩精品久久理论片| 国语对白精品一区二区| 天堂日韩电影| 亚洲开心激情| 日韩1区在线| 日韩午夜高潮| 麻豆成人在线观看| 欧美在线观看视频一区| 日本在线不卡视频| 国产精品xxx在线观看| 亚洲激情社区| 欧美伊人影院| 精品精品国产三级a∨在线| 一区二区三区四区日本视频| 六月丁香综合| 国产一区二区三区四区五区| 亚洲女人av| 在线一区av| 日韩精品视频网站| 婷婷成人基地| 国产精品网址| 一本综合精品| 国产99精品一区| 男人天堂欧美日韩| 麻豆久久一区| 亚洲一区二区成人| 免费一级欧美片在线观看网站| 视频在线不卡免费观看| 欧美精品观看| 99国产精品私拍| 麻豆一区二区99久久久久| 在线 亚洲欧美在线综合一区| 国产欧美88| 久久精品国产99久久| 欧美综合精品| 美女网站一区| 国产不卡人人| 日韩精品高清不卡| 精品一区欧美| 欧美激情精品| 免费在线观看成人| 精品精品99| aa国产精品| 日韩精品专区| 精品日韩一区| 蜜桃一区二区三区在线| 综合日韩av| 国产精品一二| 亚洲综合欧美| 99久久久久| 久久字幕精品一区| 一区二区电影| 欧美午夜精品一区二区三区电影| 国产精品网站在线看| 欧美成人精品午夜一区二区| 最新国产精品| 精精国产xxxx视频在线播放| 蜜桃国内精品久久久久软件9| 国产亚洲一区二区三区啪| 中文一区一区三区免费在线观| 日韩成人亚洲| 欧美aⅴ一区二区三区视频| 另类激情亚洲| 欧美a级片一区| 福利精品一区| 91亚洲无吗| 视频一区视频二区中文| 久久精品国产精品亚洲毛片| 欧美欧美黄在线二区| 影音先锋久久精品| 日韩网站在线| 影院欧美亚洲| 激情欧美亚洲| 亚洲日本欧美| 青草综合视频| 日本精品黄色| 欧美一级二级视频| 久久影院一区二区三区| 亚洲国产日韩欧美在线| 国产suv精品一区| 国产日产一区| 日韩中文字幕在线一区| 男人的天堂久久精品| 不卡在线一区二区| 色综合狠狠操| 神马午夜在线视频| 精品国产日韩欧美精品国产欧美日韩一区二区三区 | 欧美日韩国产免费观看视频| 国产成人精品一区二区三区在线| 国产精品欧美在线观看| 日韩在线网址| 综合亚洲自拍| 欧美一区二区三区免费看| 91午夜精品| 粉嫩av一区二区三区四区五区| 成人午夜毛片| 亚洲精品极品少妇16p| 欧美va亚洲va日韩∨a综合色| 免费观看不卡av| 久久xxxx| 日韩精品亚洲专区| 国产精品一区二区99| 国产精品欧美三级在线观看| 精品国产日韩欧美精品国产欧美日韩一区二区三区 | 91精品xxx在线观看| 日本а中文在线天堂| 国内精品伊人| 免费高潮视频95在线观看网站| 视频在线不卡免费观看| 91精品啪在线观看国产18| 欧美一区二区性| 午夜国产一区二区| 在线国产一区| 老牛影视一区二区三区| 亚洲影院天堂中文av色| 亚洲欧美网站| 岛国av免费在线观看| 久久精品不卡| 日韩三级精品| 日韩中文字幕在线一区| 国产精品乱战久久久| 欧美成a人免费观看久久| 亚洲午夜精品久久久久久app| 久久久久久黄| 久久亚洲图片| 国产亚洲精品自拍| 精品1区2区3区4区| 国产成人免费| 成人在线丰满少妇av| 国产毛片精品| 国产免费av国片精品草莓男男| 国产激情久久| 中文字幕在线免费观看视频| 亚洲欧美一区在线| 亚洲精品系列| 久久99影视| 久久精品国产亚洲夜色av网站| 久久av在线| 国产精品亚洲欧美日韩一区在线| 日韩高清成人| 视频一区二区欧美| 国产精品a级|