星联网络专注帝国CMS二次功能插件开发-精品网站模板站长代码素材

  • 最近更新
  • 模板:33
  • 记录:12640|
  • 插件:52|
  • 工具:4|
  • 代码:8|
  • 评论:0

dedecms织梦短信接口插件代码(微米短信平台)

前言

本文主要讲解《dedecms织梦短信接口插件代码(微米短信平台)》的详细内容

本教程织梦短信接口插件代码基于微米短信平台(www.weimi.cc)的一个织梦短信接口。织梦58分享给大家。

dedecms织梦短信接口插件代码(微米短信平台)

具体代码

1、存储验证码到数据库,需要新建建一个数据表。后台----系统---- sql命令行工具,运行以下代码:(注意表前缀)

1 2 3 4 5 6 7 8 9 DROPTABLEIFEXISTS`dede_sms`; CREATETABLE`dede_sms`( `id`int(11)unsignedNOTNULLAUTO_INCREMENT, `phone`varchar(15)NOTNULLDEFAULT'', `code`varchar(8)NOTNULLDEFAULT'', `created_at`int(10)NOTNULLDEFAULT'0', `expire_at`int(10)NOTNULLDEFAULT'0', PRIMARYKEY(`id`) )ENGINE=MyISAMAUTO_INCREMENT=1DEFAULTCHARSET=utf8;

2、新建WMsendSms.PHP文件,放在/include目录下。具体代码如下:

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 <?php if(!defined('DEDEINC'))exit('RequestError!'); //发送短信 //$cid短信模板CID functionsendSms($mob,$cid='微米短信模板查看CID') { $res=validatePremise($mob); if($res){ $ch=curl_init(); curl_setopt($ch,CURLOPT_URL,"http://api.weimi.cc/2/sms/send.html"); curl_setopt($ch,CURLOPT_RETURNTRANSFER,TRUE); curl_setopt($ch,CURLOPT_POST,TRUE); /* 传入模板参数。短信模板内容示例: 【微米】您的验证码是:%P%,%P%分钟内有效。如非您本人操作,可忽略本消息。 传入两个参数: p1:610912 p2:3 最终发送内容: 【微米】您的验证码是:610912,3分钟内有效。如非您本人操作,可忽略本消息。 */ $uid='微米查看去'; $pas='微米查看去'; $p1=createRandomCoder(4); $p2=5;//分钟 curl_setopt($ch,CURLOPT_POSTFIELDS,"uid=$uid&pas=$pas&mob=$mob&cid=$cid&p1=$p1&p2=$p2&type=json"); $res=curl_exec($ch); curl_close($ch); $arr=json_decode($res,true); if($arr['code']==0){ saveCode($mob,$p1); return"短信发送成功!"; } return"短信发送失败!"; }else{ return"短信发送频繁,请稍后再发送!"; } } //生成随机字符串 //$len要生成的随机字符串长度 //$type随机码类型:0,数字+大小写字母;1,数字;2,小写字母;3,大写字母;4,特殊字符;-1,数字+大小写字母+特殊字符 functioncreateRandomCoder($len,$type='0') { $arr=array(1=>"0123456789",2=>"abcdefghijklmnopqrstuvwxyz",3=>"ABCDEFGHIJKLMNOPQRSTUVWXYZ",4=>"~@#$%^&*(){}[]|"); if($type==0){ array_pop($arr); $string=implode("",$arr); }elseif($type=="-1"){ $string=implode("",$arr); }else{ $string=$arr[$type]; } $count=strlen($string)-1; $code=''; for($i=0;$i<$len;$i++){ $code.=$string[rand(0,$count)]; } return$code; } //保存验证码 functionsaveCode($phone,$code,$time=5) { global$dsql; $created_at=time(); $expire_at=time()+($time*60); $code=strtolower($code); $sql="INSERTINTO`dede_sms`(`phone`,`code`,`created_at`,`expire_at`)VALUES('$phone','$code','$created_at','$expire_at')"; return$dsql->ExecuteNoneQuery($sql); } //检查手机号,验证码 functionvalidateCode($phone,$code) { global$dsql; $code=strtolower($code); $current=time(); $sql="SELECT`id`FROM`dede_sms`WHERE`phone`LIKE'$phone'AND`code`LIKE'$code'AND`expire_at`>'$current'"; $row=$dsql->GetOne($sql); if(is_array($row)){ returntrue; }else{ returnfalse; } } //检查是否发送:防止恶意刷短信 //$phone手机号www.dede58.com织梦模板下载 //$time有效时间(分钟) functionvalidatePremise($phone,$time='1') { global$dsql; $row=$dsql->GetOne("SELECT`id`,`expire_at`FROM`dede_sms`WHERE`phone`LIKE'$phone'"); if(is_array($row)){ if(time()<$row['expire_at']){ returnfalse; }else{ $dsql->ExecuteNoneQuery("DELETEFROM`dede_sms`WHEREid=".$row['id']); } } returntrue; }

提示:表的前缀改为你的表前缀,这样就完成了织梦短信接口。


本网刊登的文章均仅代表作者个人观点,并不代表本网立场。文中的论述和观点,敬请读者注意判断。

本文地址:http://www.xlkjgs.com/notes/web/11113.html

以上内容由本站整理呈现,请务必在转载分享时注明本文地址!如对内容有疑问,请联系我们,谢谢!

星联网络

星联网络是中国最具实战的互联网创业者的知识服务商,这里有互联网行业动态,网络推广,SEO优化,SEM优化,ESC配置,行业经验分型,互联网项目,微信营销、淘宝客赚钱、新媒体营销、京东运营、跨境电商等众多互联网营销知识分享

站长运营站长必备网站运营之道才能长久发展