dede织梦 短信接口 --微米

news/2024/11/29 10:44:37/

初次写短信接口,基本方法都有....可能有点糙....已测试


验证码存在数据库

DROP TABLE IF EXISTS `dede_sms`;
CREATE TABLE `dede_sms` (`id` int(11) unsigned NOT NULL AUTO_INCREMENT,`phone` varchar(15) NOT NULL DEFAULT '',`code` varchar(8) NOT NULL DEFAULT '',`created_at` int(10) NOT NULL DEFAULT '0',`expire_at` int(10) NOT NULL DEFAULT '0',PRIMARY KEY (`id`)
) ENGINE=MyISAM AUTO_INCREMENT=1 DEFAULT CHARSET=utf8;


WMsendSms.php 放在include下:

<?php
if(!defined('DEDEINC')) exit('Request Error!');//发送短信
//$cid 短信模板CID
function sendSms($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:610912p2: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,数字+大小写字母+特殊字符
function createRandomCoder($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;
}//保存验证码
function saveCode($phone,$code,$time = 5)
{global $dsql;$created_at = time();$expire_at = time() + ($time * 60);$code = strtolower($code);$sql = "INSERT INTO `#@__sms`(`phone`,`code`,`created_at`,`expire_at`) VALUES ('$phone','$code','$created_at','$expire_at')";return $dsql->ExecuteNoneQuery($sql);
}//检查手机号,验证码
function validateCode($phone,$code)
{global $dsql;$code = strtolower($code);$current = time();$sql = "SELECT `id` FROM `#@__sms` WHERE `phone` LIKE '$phone' AND `code` LIKE '$code' AND `expire_at` > '$current' ";$row = $dsql->GetOne($sql);if(is_array($row)){return true;}else{return false;}
}//检查是否发送:防止恶意刷短信
//$phone 手机号
//$time  有效时间 (分钟)
function validatePremise($phone,$time = '1')
{global $dsql;$row = $dsql->GetOne("SELECT `id`,`expire_at` FROM `#@__sms` WHERE `phone` LIKE '$phone' ");if(is_array($row)){if( time() < $row['expire_at'] ){return false;}else{$dsql->ExecuteNoneQuery("DELETE FROM `#@__sms` WHERE id=".$row['id']);}}return true;
}


http://www.ppmy.cn/news/786664.html

相关文章

什么是初效过滤器_初效过滤器主要用于过滤多少微米的杂质?

初效过滤器主要用于过滤多少微米的杂质&#xff1f; 信息来源&#xff1a;http://www.hefil.com.cn/ 发布时间&#xff1a;2018/4/24 9:16:41 点击数&#xff1a; Tags: 过滤网产品 针对市面上销售的过滤器过滤的精密程度不同&#xff0c;可将过滤器分为初效过滤器、中效过滤器…

亚微米SOI脊型波导(课堂笔记)

目录 1.SOI脊型波导 2.taper登场 3.硅nano-slot波导&#xff08;很奇特&#xff0c;光在折射率低的地方进行了传输&#xff09; 总结 1.SOI脊型波导 首先脊型波导与直波导的区别在于ridge wg不把silicon全刻到底&#xff0c;如下图留出来35nm的距离&#xff0c;这个留出来的…

Paper之CVPRICCVECCV:2009年~2019年CVPRICCVECCV(国际计算机视觉与模式识别会议国际计算机视觉大会欧洲计算机视觉会议)历年最佳论文简介及其解读

Paper之CVPR&ICCV&ECCV:2009年~2019年CVPR&ICCV&ECCV(国际计算机视觉与模式识别会议&国际计算机视觉大会&欧洲计算机视觉会议)历年最佳论文简介及其解读 目录

Water Research | 南科大夏雨组揭示Anammox菌群微米级空间异质性和保守互作

Water Research: 南方科技大学夏雨团队揭示Anammox菌群微米级分辨率空间异质性和保守互作 微米尺度生物地理学视角揭示Anammox细菌属水平内保守空间关联 Micron-scale biogeography reveals conservative intra anammox bacteria spatial co-associations Article, 2022-5-20 W…

origin汉字问题与特殊符号

1、origin显示汉字&#xff0c;在版本8.5以上就没有问题了 2、微米等特殊符号 ctrlM 字体设置为symbol

亚微米像素技术发展

如果我们翻看这些年的IISW会议,第一个话题总是pixel scaling,厂商也给出了roadmap,比如三星早在去年就提出了CIS传感器路线图: 可见像素微缩在CIS的发展中至关重要的地位。甚至在每年ISSCC和IEDM上,都能看见top厂商不断push像素尺寸所发出来的论文。而pixel scali…

Latex在论文中输出微米和cm-1

微米 期刊中显示的符号需要是直立的&#xff0c;不能是斜体的。 有两种方法&#xff1a; \usepackage{textcomp} \testmu m\usepackage{upgreek} \upmu$m cm-1 cm$^{-1} $ (去掉$前面的空格)

python中如何显示特殊的单位符号

这个博主给出了一些特殊的符号或者单位如何显示&#xff1a; >>>特殊符号或者单位<< 特别说明&#xff1a; 符号一定要放在$$之间&#xff0c;如$\mu$&#xff0c;即μ