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


待發短信

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

4001-021-502

工作時間

9:00-21:00

emlog pro_1.2.2新增短信寶短信接口

emlog是一款基于PHP和MySQL的功能強大的博客及CMS建站系統,追求快速、穩定、簡單、舒適的建站體驗。小編對這款軟件還是比較了解的,小編今天就以新增短信接口為例為大家講解一下如何進行二次開發,我們使用的短信接口是我們短信寶短信群發平臺的短信接口,我們短信寶短信群發平臺非常穩定,發送速度快,注冊就送測試短信,推薦大家使用。
1:打開項目:admin\views\setting.php,以及同目錄下的setting_mail.php,setting_seo.php,setting_user.php,blogger.php增加短信設置頁面

1
2
3
4
5
6
7
8
????????<ul?class="nav?nav-pills">
????????????<li?class="nav-item"><a?class="nav-link"?href="./setting.php">基礎設置</a></li>
????????????<li?class="nav-item"><a?class="nav-link"?href="./setting.php?action=user">用戶設置</a></li>
????????????<li?class="nav-item"><a?class="nav-link"?href="./setting.php?action=mail">郵件通知</a></li>
????????????<li?class="nav-item"><a?class="nav-link"?href="./setting.php?action=seo">SEO優化</a></li>
????????????<li?class="nav-item"><a?class="nav-link?active"?href="./blogger.php">個人信息</a></li>
????????????<li?class="nav-item"><a?class="nav-link"?href="./setting.php?action=sms">短信通知</a></li>
????????</ul>

2:打開項目:admin\views目錄新增短信寶設置頁面 setting_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
<?php?if?(!defined('EMLOG_ROOT'))?{
????exit('error!');
}??>
<?php?if?(isset($_GET['activated'])):??>
????<div?class="alert?alert-success">設置保存成功</div><?php?endif??>
<div?class="d-sm-flex?align-items-center?justify-content-between?mb-4">
????<h1?class="h3?mb-0?text-gray-800">設置</h1>
</div>
<div?class="panel-heading">
????<ul?class="nav?nav-pills">
????????<li?class="nav-item"><a?class="nav-link"?href="./setting.php">基礎設置</a></li>
????????<li?class="nav-item"><a?class="nav-link"?href="./setting.php?action=user">用戶設置</a></li>
????????<li?class="nav-item"><a?class="nav-link?"?href="./setting.php?action=mail">郵件通知</a></li>
????????<li?class="nav-item"><a?class="nav-link"?href="./setting.php?action=seo">SEO優化</a></li>
????????<li?class="nav-item"><a?class="nav-link"?href="./blogger.php">個人信息</a></li>
????????<li?class="nav-item"><a?class="nav-link?active"?href="./setting.php?action=sms">短信通知</a></li>
????</ul>
</div>
<div?class="card?shadow?mb-4?mt-2">
????<div?class="card-body">
????????<form?action="setting.php?action=sms_save"?method="post"?name="input"?id="sms_config">
????????????<h4>短信發送</h4>
????????????<div?class="form-group?form-check">
????????????????<input?class="form-check-input"?type="checkbox"?value="y"?name="is_smsup"?id="is_smsup"?<?=?$conf_is_signup??>?/>
????????????????<label?class="form-check-label">開啟短信注冊</label>
????????????</div>
????????????<div?class="form-group">
????????????????<label>短信寶賬號</label>
????????????????<input??class="form-control"?value="<?=?$sms_user??>"?name="sms_user"?required>
????????????</div>
????????????<div?class="form-group">
????????????????<label>短信寶密碼</label>
????????????????<input?type="password"?name="sms_pwd"?cols=""?rows="3"?class="form-control"?value="<?=?$sms_pwd??>"?required>
????????????</div>
????????????<div?class="form-group">
????????????????<label>短信寶簽名</label>
????????????????<input?class="form-control"?value="<?=?$sms_sign??>"?name="sms_sign"?required>
????????????</div>
????????????<div?class="form-group">
????????????????<label>注冊短信模板</label>
????????????????<input?class="form-control"?value="<?=?$sms_tmp??>"?name="sms_tmp"?required>
????????????</div>
????????????<div?class="form-group">
????????????????<input?name="token"?id="token"?value="<?=?LoginAuth::genToken()??>"?type="hidden"/>
????????????????<input?type="submit"?value="保存設置"?class="btn?btn-sm?btn-success"/>
????????????????<input?type="button"?value="發送測試"?class="btn?btn-sm?btn-primary"?data-toggle="modal"?data-target="#testSms"/>
????????????</div>
????????????<!--?設置接收短信的模態框?-->
????????????<div?class="modal?fade"?id="testSms">
????????????????<div?class="modal-dialog?modal-sm">
????????????????????<div?class="modal-content">
????????????????????????<div?class="modal-header">
????????????????????????????<h4?class="modal-title">發送測試</h4>
????????????????????????????<button?type="button"?class="close"?data-dismiss="modal">&times;</button>
????????????????????????</div>
????????????????????????<div?class="modal-body">
????????????????????????????<div?class="form-group">
????????????????????????????????<input?class="form-control"?type="email"?name="testTo"?placeholder="輸入接收手機號">
????????????????????????????</div>
????????????????????????</div>
????????????????????????<div?class="modal-footer">
????????????????????????????<div?id="testMailMsg"></div>
????????????????????????????<button?type="button"?class="btn?btn-secondary?btn-sm"?data-dismiss="modal">關閉</button>
????????????????????????????<button?type="button"?class="btn?btn-success?btn-sm"?id="testSendBtn">發送</button>
????????????????????????</div>
????????????????????</div>
????????????????</div>
????????????</div>
????????</form>
????</div>
</div>
<script>
????$("#menu_category_sys").addClass('active');
????$("#menu_sys").addClass('show');
????$("#menu_setting").addClass('active');
????setTimeout(hideActived,?2600);
????$("#testSendBtn").click(function?()?{
????????$("#testMailMsg").html("<small?class='text-secondary'>發送中...<small>");
????????$.post("setting.php?action=sms_test",?$("#sms_config").serialize(),?function?(data)?{
????????????if?(data?==?0)?{
????????????????$("#testMailMsg").html("<small?class='text-success'>發送成功</small>");
????????????}?else?{
????????????????$("#testMailMsg").html(data);
????????????}
????????});
????})
</script>

3:打開admin\views\signup.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
?<form?method="post"?class="user"?action="./account.php?action=dosignup">
????????????????????????????????????<div?class="form-group">
????????????????????????????????????????<input?type="email"?class="form-control?form-control-user"?id="mail"
???????????????????????????????????????????????name="mail"?aria-describedby="emailHelp"?placeholder="郵箱"?required
???????????????????????????????????????????????autofocus>
????????????????????????????????????</div>
????????????????????????????????????<?php?if?($is_smsup):??>
????????????????????????????????????????<div?class="form-group?form-inline">
????????????????????????????????????????????????<input??type="text"?id="userPhone"?class="form-control?form-control-user"?placeholder="請輸入手機號碼">
????????????????????????????????????????????????<button??type="button"?class="btn?btn-info"??id="second">點擊獲取驗證碼</button>
????????????????????????????????????????</div>
????????????????????????????????????????<div?class="form-group">
????????????????????????????????????????????<input?type="text"?name="securityCode"?class="form-control?form-control-user"??placeholder="請輸入驗證碼"?required?autofocus>
????????????????????????????????????????</div>
????????????????????????????????????<?php?endif;??>
????????????????????????????????????<div?class="form-group">
????????????????????????????????????????<input?type="password"?class="form-control?form-control-user"?minlength="6"
???????????????????????????????????????????????id="passwd"?name="passwd"?placeholder="密碼"?required>
????????????????????????????????????</div>
????????????????????????????????????<div?class="form-group">
????????????????????????????????????????<input?type="password"?class="form-control?form-control-user"?minlength="6"
???????????????????????????????????????????????id="repasswd"?name="repasswd"?placeholder="再次輸入密碼"?required>
????????????????????????????????????</div>
????????????????????????????????????<?php?if?($login_code):??>
????????????????????????????????????????<div?class="form-group?form-inline">
????????????????????????????????????????????<input?type="text"?name="login_code"?class="form-control?form-control-user"
???????????????????????????????????????????????????id="login_code"?placeholder="驗證碼"?required>
????????????????????????????????????????????<img?src="../include/lib/checkcode.php"?id="checkcode"?class="mx-2">
????????????????????????????????????????</div>
????????????????????????????????????<?php?endif??>
????????????????????????????????????<button?class="btn?btn-success?btn-user?btn-block"?type="submit">注冊</button>
????????????????????????????????????<hr>
????????????????????????????????????<div?class="text-center"><a?href="/admin">登錄</a></div>
????????????????????????????????????<hr>
????????????????????????????????????<div?class="text-center"><a?href="../"?class="small"?role="button">&larr;返回首頁</a>
????????????????????????????????????</div>
????????????????????????????????</form>

此頁面同時也增加有關60秒倒計時的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
<script?type="text/javascript">
????$("#second").click(function?(){
????????sendyzm($("#second"));
????});
????//用ajax提交到后臺的發送短信接口
????function?sendyzm(obj){
????????var?phone?=?$("#userPhone").val();
????????var?result?=?isPhoneNum();
????????if(result)?{
????????????$.ajax({
????????????????url:"/admin/account.php?action=smsYzm&phone="+phone,
????????????????type:"get",
????????????????processData:?false,
????????????????contentType:?false,
????????????????success:function(data){
????????????????????if?(data?==?0)?{
????????????????????????setTime(obj);
????????????????????}else?if?(data?==?1){
????????????????????????alert('驗證碼發送頻繁')
????????????????????}else{
????????????????????????alert('驗證碼發送失敗')
????????????????????}
????????????????},
????????????????error:function(){
????????????????????alert("驗證碼發送失敗")
????????????????}
????????????})
????????}
????}
????//60s倒計時實現邏輯
????var?countdown?=?60;
????function?setTime(obj)?{
????????if?(countdown?==?0)?{
????????????obj.prop('disabled',?false);
????????????obj.text("點擊獲取驗證碼");
????????????countdown?=?60;//60秒過后button上的文字初始化,計時器初始化;
????????????return;
????????}?else?{
????????????obj.prop('disabled',?true);
????????????obj.text("("+countdown+"s)后重新發送")?;
????????????countdown--;
????????}
????????setTimeout(function()?{?setTime(obj)?},1000)?//每1000毫秒執行一次
????}
????//校驗手機號是否合法
????function?isPhoneNum(){
????????var?phonenum?=?$("#userPhone").val();
????????var?reg?=?/^1[34578]\d{9}$/;
????????if(!reg.test(phonenum)){
????????????alert('請輸入有效的手機號碼!');
????????????return?false;
????????}else{
????????????return?true;
????????}
????}
</script>

4:打開admin\account.php修改signup注冊方法

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
if?($action?==?'signup')?{
????loginAuth::checkLogged();
????$login_code?=?Option::get('login_code')?===?'y';
????$is_smsup?=?Option::get('is_smsup')?===?'y';
????$error_msg?=?'';
????if?(Option::get('is_signup')?!==?'y')?{
????????emMsg('系統已關閉注冊!');
????}
????$page_title?=?'注冊賬號';
????include?View::getAdmView('user_head');
????require_once?View::getAdmView('signup');
????View::output();
}
if?($action?==?'smsYzm')?{
????$data?=?[];
????//做檢測
????$phone?=?isset($_GET['phone'])???addslashes(trim($_GET['phone']))?:?'';
????if?(!isset($_SESSION))?{
????????session_start();
????}
????if?(isset($_SESSION['tel'])?&&?time()-$_SESSION['tel']?<?60){
????????echo?1;
????????exit;
????}
????$login_code?=?isset($_POST['login_code'])???addslashes(strtoupper(trim($_POST['login_code'])))?:?'';?//登錄注冊驗證碼
????if?(!User::checkLoginCode($login_code))?{
????????emDirect('./account.php?action=signup&err_ckcode=1');
????}
????$rand?=?mt_rand(0,9999);
????$test_temp?=?Option::get('sms_tmp')?;
????$content?=?str_replace('{$code}',$rand,$test_temp);
????$res?=?(new?SmsBao())->send($phone,$content);
//????$res?=?'發送成功';
????if?($res?!=?"發送成功"){
????????echo?$res;
??????exit;
????}else{
????????if?(!isset($_SESSION))?{
????????????session_start();
????????}
????????$_SESSION['tel']?=?time();
????????$_SESSION['sms_yzm_code']?=?$rand;
????????echo?0;
????????exit;
????}
}

5:打開admin\setting.php新增sms、sms_test、sms_save方法

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
if?($action?==?'sms')?{
????$options_cache?=?$CACHE->readCache('options');
????$sms_user?=?$options_cache['sms_user'];
????$sms_pwd?=?$options_cache['sms_pwd'];
????$sms_sign?=?$options_cache['sms_sign'];
????$sms_tmp?=?$options_cache['sms_tmp'];
????$conf_is_signup?=?$options_cache['is_smsup']?==?'y'???'checked="checked"'?:?'';
????include?View::getAdmView('header');
????require_once(View::getAdmView('setting_sms'));
????include?View::getAdmView('footer');
????View::output();
}
if?($action?==?'sms_test')?{
????$data?=?[
????????'testTo'??????=>?$_POST['testTo']????'',
????];
????$test_temp?=?'您的驗證碼為1234';
????try?{
//???????$res?=?(new?SmsBao())->send($data['testTo'],$test_temp);
???????$res?=?'發送成功';
????????if?($res?!=?"發送成功"){
????????????exit("<small?class='text-danger'>$res</small>");
????????????return?false;
????????}
????}?catch?(Exception?$exc)?{
????????exit("<small?class='text-danger'>發送失敗</small>");
????????return?false;
????}
}
if?($action?==?'sms_save')?{
????LoginAuth::checkToken();
????$data?=?[
????????'is_smsup'???=>?isset($_POST['is_smsup'])???addslashes($_POST['is_smsup'])?:?'',
????????'sms_user'???=>?isset($_POST['sms_user'])???addslashes($_POST['sms_user'])?:?'',
????????'sms_pwd'?????=>?isset($_POST['sms_pwd'])???addslashes($_POST['sms_pwd'])?:?'',
????????'sms_tmp'?????=>?isset($_POST['sms_tmp'])???addslashes($_POST['sms_tmp'])?:?'',
????????'sms_sign'?=>?isset($_POST['sms_sign'])???addslashes($_POST['sms_sign'])?:?'',
????];
????foreach?($data?as?$key?=>?$val)?{
????????Option::updateOption($key,?$val);
????}
????$CACHE->updateCache(array('options'));
????header('Location:?./setting.php?action=sms&activated=1');
}

6:最后打開項目include\lib目錄新增smsbao.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
<?php
class?SmsBao?{
????public?$sms_user;
????public?$sms_pwd;
????public?$sms_sign;
????public?function?__construct()?{
????????$this->sms_user?=?Option::get('sms_user');
????????$this->sms_pwd?=?Option::get('sms_pwd');
????????$this->sms_sign?=?Option::get('sms_sign');
????}
????function?send($to,$content)?{
????????try?{
????????????$statusStr?=?array(
????????????????"0"?=>?"發送成功",
????????????????"-1"?=>?"參數不全",
????????????????"-2"?=>?"服務器空間不支持,請確認支持curl或者fsocket,聯系您的空間商解決或者更換空間!",
????????????????"30"?=>?"密碼錯誤",
????????????????"40"?=>?"賬號不存在",
????????????????"41"?=>?"余額不足",
????????????????"42"?=>?"帳戶已過期",
????????????????"43"?=>?"IP地址限制",
????????????????"50"?=>?"內容含有敏感詞"
????????????);
????????????$smsapi?=?";
????????????$user?=?$this->sms_user;?//短信平臺帳號
????????????$pass?=?md5($this->sms_pwd);?//短信平臺密碼
????????????$content="【".$this->sms_sign."】".$content;//要發送的短信內容
????????????$phone?=?$to;//要發送短信的手機號碼
????????????$sendurl?=?$smsapi."sms?u=".$user."&p=".$pass."&m=".$phone."&c=".urlencode($content);
????????????$res?=?file_get_contents($sendurl);
????????????return?$statusStr[$res];
????????}?catch?(Exception?$exc)?{
????????????return?false;
????????}
????}
}

好了,經過以上的替換,短信寶的短信平臺已經替換成功了,可以正常使用了。我們進行測試發送。

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

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

開源插件

最新更新

電商類

CMS類

微信類

文章標簽