首页 > 后端开发 > 正文

php短信验证微擎框架 php如何实现短信验证

2023-09-27 12:47:46 | 我爱编程网

php短信验证微擎框架 php如何实现短信验证相关内容,小编在这里做了整理,希望能对大家有所帮助,关于php短信验证微擎框架 php如何实现短信验证信息,一起来了解一下吧!

php短信验证微擎框架 php如何实现短信验证

php ci框架怎么对接短信接口

相当简单 这个接口调用就是封装一个curl请求的function (sendSMS),代码示例网站上已经有了,使用时:加载这个function, 然后 调用方法sendSMS;

我把源码给你贴一遍,这个里面的账号密码是需要你们自己去申请的; 我爱编程网

<?
$username = 'test'; //用户账号
$password = '123456'; //密码
$mobile  = '13811299934,18610310066,15210954922'; //号手机码
$content = '您的短信验证码是:ABCD'; //内容
//即时发送
$result = sendSMS($username,$password,$mobile,$content);
echo $result;
 
 
function sendSMS($username,$password,$mobile,$content)
{
$url = '域名/api/sms.php';
$data = array
(
'username'=>$username, //用户账号
'password'=>$password, //密码
'mobile'=>$mobile, //号码
'content'=>$content, //内容
);
$result= curlSMS($url,$data); //POST方式提交
return $result;
}
 
function curlSMS($url,$post_fields=array()){
        $ch = curl_init();
        curl_setopt($ch, CURLOPT_URL,$url);
        curl_setopt($ch, CURLOPT_RETURNTRANSFER,1);
curl_setopt($ch, CURLOPT_TIMEOUT, 3600); //60秒 
        curl_setopt($ch, CURLOPT_HEADER,1);
        curl_setopt($ch, CURLOPT_REFERER,'');
        curl_setopt($ch,CURLOPT_POST,1);
        curl_setopt($ch, CURLOPT_POSTFIELDS,$post_fields);
        $data = curl_exec($ch);
        curl_close($ch);
        $res = explode("\r\n\r\n",$data);
        return $res[2]; 
}
 
?>

php短信验证微擎框架 php如何实现短信验证

php怎么发短信通知



php怎么发短信通知
做网站时发送短信验证码的需求很常见,比如手机号注册,密码找回等等。下面一起来了解下如何实现吧。
1. 手机号注册的前后端交互的流程;
(1)用户操作客户端点击发送验证码,(然后客户端ajax发送请求,并且按钮处于60s静默时间)
(2)后端逻辑层,接受传递过来的手机号,验证格式是否合法,进入数据库匹配是否存在
(3)生成验证码,存在session中,然后curl发送到第三方的短信接口链接中
(4)配置第三方短信平台,向指定手机号用户发送验证码信息
2. 今天我们主要阐述第三方平台的配置,以及后台处理的逻辑;
3. 选择的第三方平台为: (您也可以选择其他平台,其原理都差不多类似)
(1) 赛迪·云通信 ( )
(2) 注册,实名认证,进入产品与服务,新建模板,其模板语法可以查看其配套文档
(3) 去到 "创建/管理 AppIdD" 栏目,创建并且启用项目,然后生成默认的 "APPID" 及 "APPKEY"
(4)去到首页,点开 "查看API开发文档" 链接,获取POST请求的链接:
后台逻辑开发:
核心:创建验证码 -> 封装POST请求函数 -> 发送验证码到第三方平台 -> 再由第三方转发至用户的手机
(1)发送验证码到第三方平台:
private function sendMessage()
{
$appId = "xxxxx";
$appKey = "36426a9xxxxxxxxxxxx7bed8583a3c";
$code = $this->makeCode(6);
$data = [
"appid" => $appId,
"to" => $this->phone,
"project" => "FoJ494",
"vars" => '{"code":' . $code . ',"time":"60"}',
"signature" => $appKey,
];
$res = $this->httpRequest($data);
var_dump($res);
}(2)请求链接发送验证码数据到第三方平台
private function httpRequest($data)
{
$curl = curl_init();
curl_setopt($curl, CURLOPT_URL, $this->RequestUrl);
curl_setopt($curl, CURLOPT_HEADER, 0);
curl_setopt($curl, CURLOPT_RETURNTRANSFER, 1);

if (isset($data)) {
curl_setopt($curl, CURLOPT_POST, 1);
curl_setopt($curl, CURLOPT_POSTFIELDS, $data);
}

$res = curl_exec($curl);
var_dump(curl_error($curl)); //打印请求错误
curl_close($curl);
return $res;
}5. 最终效果


更多PHP相关知识,请访问PHP中文网!

php短信验证微擎框架 php如何实现短信验证

php如何实现短信验证


php实现短信验证的方法:首先接入短信服务;然后在网站信息提交页面请求发送信息;接着服务器向短信服务提供商通信,提交发送请求;最后短信服务提供商通过运营商将信息发送到用户的手机中。
php实现短信验证的方法:
第一、实现php手机短信验证功能的基本思路
1、要找到短信服务提供商,接入短信服务
2、在网站信息提交页面请求发送信息
3、服务器向短信服务提供商通信,提交发送请求
4、短信服务提供商通过运营商将信息发送到用户的手机中
二、手机号码短信验证前台页面效果实现
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "-transitional.dtd">
<html xmlns="">
<head>
<title></title>
<script src="js/jquery-1.4a2.min.js" type="text/javascript"></script>
<script type="text/javascript">
/*-------------------------------------------*/
var InterValObj; //timer变量,控制时间
var count = 60; //间隔函数,1秒执行
var curCount;//当前剩余秒数
var code = ""; //验证码
var codeLength = 6;//验证码长度
function sendMessage() {
curCount = count;
var dealType; //验证方式
tel = $(’#tel’).val();
if(tel!=’’){
//验证手机有效性
var myreg = /^(((13[0-9]{1})|(15[0-9]{1})|(18[0-9]{1}))+d{8})$/;
if(!myreg.test($(’#tel’).val()))
{
alert(’请输入有效的手机号码!’);
return false;
}
tel = $(’#tel’).val();
//产生验证码
for (var i = 0; i < codeLength; i++) {
code += parseInt(Math.random() * 9).toString();
}
//设置button效果,开始计时
$("#btnSendCode").attr("disabled", "true");
$("#btnSendCode").val("请在" + curCount + "秒内输入验证码");
InterValObj = window.setInterval(SetRemainTime, 1000); //启动计时器,1秒执行一次
//向后台发送处理数据
$.ajax({
type: "POST", //用POST方式传输
dataType: "text", //数据格式:JSON
url: ’yanzhengma.php’, //目标地址(根据实际地址)
data: "&tel=" + tel + "&code=" + code,
error: function (XMLHttpRequest, textStatus, errorThrown) { },
success: function (msg){ }
});
}else{
alert(’请填写手机号码’);
}
}
//timer处理函数
function SetRemainTime() {
if (curCount == 0) {
window.clearInterval(InterValObj);//停止计时器
$("#btnSendCode").removeAttr("disabled");//启用按钮
$("#btnSendCode").val("重新发送验证码");
code = ""; //清除验证码。如果不清除,过时间后,输入收到的验证码依然有效
}
else {
curCount--;
$("#btnSendCode").val("请在" + curCount + "秒内输入验证码");
}
}
</script>
</head>
<body>
<input name="tel" id=tel type="text" />
<input id="btnSendCode" type="button" value="发送验证码" onclick="sendMessage()" /></p>
</body>
</html>
第三、调用短信服务器短信接口
笔者整理的页面是yanzhengma.php(具体根据服务商提供信息)
<?php //提交短信
$post_data = array();
$post_data[’userid’] = 短信服务商提供ID;
$post_data[’account’] = ’短信服务商提供用户名’;
$post_data[’password’] = ’短信服务商提供密码’;
// Session保存路径
$sessSavePath = dirname(__FILE__)."/../data/sessions/";
if(is_writeable($sessSavePath) && is_readable($sessSavePath)){
session_save_path($sessSavePath);
}
session_register(’mobliecode’);
$_SESSION[’mobilecode’] = $_POST["code"];
$content=’短信验证码:’.$_POST["code"].’【短信验证】’;
$post_data[’content’] = mb_convert_encoding($content,’utf-8’, ’gb2312’); //短信内容需要用urlencode编码下
$post_data[’mobile’] = $_POST["tel"];
$post_data[’sendtime’] = ’’; //不定时发送,值为0,定时发送,输入格式YYYYMMDDHHmmss的日期值
$url=’’;
$o=’’;
foreach ($post_data as $k=>$v)
{
$o.="$k=".$v.’&’;
}
$post_data=substr($o,0,-1);
$ch = curl_init();
curl_setopt($ch, CURLOPT_POST, 1);
curl_setopt($ch, CURLOPT_HEADER, 0);
curl_setopt($ch, CURLOPT_URL,$url);
curl_setopt($ch, CURLOPT_POSTFIELDS, $post_data);
//curl_setopt($ch, CURLOPT_RETURNTRANSFER, 1); //如果需要将结果直接返回到变量里,那加上这句。
$result = curl_exec($ch);
?>
第四:提交表单信息时对短信验证码验证
//手机验证码开始
session_start();
$svalitel = $_SESSION[’mobilecode’];
$vdcodetel = empty($vdcodetel) ? ’’ : strtolower(trim($vdcodetel));
if(strtolower($vdcodetel)!=$svalitel || $svalitel==’’)
{
ResetVdValue();
//echo "Pageviews=".$vdcodetel;
ShowMsg("手机验证码错误!", ’-1’);
exit();
}想了解更多编程学习,敬请关注php培训栏目!

以上就是php短信验证微擎框架 php如何实现短信验证全部内容了,了解更多相关信息,关注我爱编程网。
与“php短信验证微擎框架 php如何实现短信验证”相关推荐
web前端开发短信验证 各大APP注册时发送短信验证码是怎么实现的?
web前端开发短信验证 各大APP注册时发送短信验证码是怎么实现的?

各大APP注册时发送短信验证码是怎么实现的?简单来说,app注册验证码都是接入的第三方短信服务商来实现的,app与短信服务商合作,短信服务商会提供api接口文档,app按照文档要求对接平台即可使用(需要懂技术才能操作)。短信验证码实现流程:1)用户在点击获取短信验证码后,网站或者APP后台就会按照某种规则,随机生成一个验证码,位数可以自己定(一般是4位或者6位);推荐阅读:接收短

2023-09-30 07:05:04
web前端怎么开发短信验证 如何获取验证码
web前端怎么开发短信验证 如何获取验证码

web前端怎么开发短信验证功能用户点击获取验证码时,发送手机号到后端接口后端接收请求后,将手机号及验证码发给短信网关,并将手机号和短信验证码保存起来用户收到短信后,输入验证码,然后将验证码和手机号传给后端后端校验手机号和验证码是否与之前保存的一致,如果一致,则鉴权通过向前端发送认证通过的cookie以及通过状态前端进行页面跳转或其他业务逻辑如何获取验证码1、首先找到

2023-10-10 17:36:54
web前端开发短信验证功能 被验证码轰炸有危险吗?
web前端开发短信验证功能 被验证码轰炸有危险吗?

开发一个app需多少钱作为一名苦逼的移动互联网创业者,被外行的朋友们问及最多的问题是“做一个网站需要多少钱?”或者“做一个APP需要多少钱?”3年前,天真的我认为做一个APP顶多5000块钱,网站2000块以内就能搞定。高于这个价格就是唬小孩。后来我确实花过1000块钱买了个模板网页,5000块钱买个模板APP,干了这些傻事。最后的结果就像淘宝上的买家秀和卖家秀的天差地别,钱打了水漂

2023-10-16 20:22:52
web前端开发短信验证 腾讯的点击验证码是什么原理
web前端开发短信验证 腾讯的点击验证码是什么原理

web前端开发技术三要素的含义和功能web前端开发技术包括三个要素:HTML、CSS和JavaScript,想要系统学习web前端开发技术可以去千锋教育,教学水平高,保障每位学子学到真才实学。HTML、CSS、JavaScript这三个是前端开发中最基本也是最必须的三个技能。前端的开发中,在页面的布局时,HTML将元素进行定义,CSS对展示的元素进行定位,再通过JavaScript实现

2023-09-30 07:04:50
php框架如何实现登录验证 php里如何加session进行登录验证
php框架如何实现登录验证 php里如何加session进行登录验证

php里如何加session进行登录验证在html页面头部加入&lt;?phpsession_start();?&gt;向服务器注册用户的会话,以便您可以开始保存用户信息,同时会为用户会话分配一个UID。session_destroy();可以彻底终结session,会失去所有已存储的session数据thinkphp怎么做登录验证登录无非就是验证用户名密码以及验证码是否正确,我们

2023-09-28 05:35:46
php模板验证表单框架 php如何实现表单数据验证
php模板验证表单框架 php如何实现表单数据验证

php主流框架都有什么php各种主流框架的比较一、ThinkPHP框架优势:简单易用(Model,Controller,View负责各自的工作),它拥有支持XML标签库技术的编译型模版引擎,支持两种模版标签,动态编译,缓存技术。还支持自定义标签库,具有独特的数据验证和自动填充,MD5数据加密等功能。部署简单只需要一个入口文件,上手快,有丰富的中文文档;学习成本低,社区活跃度高,在

2023-09-22 12:02:23
php框架yaf验证码 php如何做验证码
php框架yaf验证码 php如何做验证码

怎么样能够让php生成4位数字验证码PHP生成验证码的原理:使用PHP的GD库,生成一张带验证码的图片,并将验证码保存在Session中。PHP生成验证码的大致流程有:1、产生一张png的图片;2、为图片设置背景色;3、设置字体颜色和样式;4、产生4位数的随机的验证码;5、把产生的每...php如何做验证码php验证码制作是对php基本功的考核,php验证码制作必需开启gd库,因为要

2023-09-24 14:52:48
php验证码框架 如何用PHP生成验证码
php验证码框架 如何用PHP生成验证码

使用thinkPHP3.2.3框架调用验证码不显示应该怎么解决缺少src="{:U('Admin/Index/show')}"设置'URL_ROUTER_ON'=&gt;true,阻止submit提交行为、用js设置了e.preventDefault();可还会提交上去。&lt;formonsubmit="returnfalse"id="form"&gt;或者用JS绑定ons

2023-09-18 17:03:16