PHP代码示例

//接口类型:互亿无线触发短信接口,支持发送验证码短信、订单通知短信等。

// 账户注册:请通过该地址开通账户http://user.ihuyi.com/register.html

// 注意事项:

//(1)调试期间,请使用用系统默认的短信内容:您的验证码是:【变量】。请不要把验证码泄露给其他人。

//(2)请使用 APIID 及 APIKEY来调用接口,可在会员中心获取;

//(3)该代码仅供接入互亿无线短信接口参考使用,客户可根据实际需要自行编写;

//开启SESSION

session_start();

header("Content-type:text/html; charset=UTF-8");

//请求数据到短信接口,检查环境是否 开启 curl init。

function Post($curlPost,$url){

$curl = curl_init();

curl_setopt($curl, CURLOPT_URL, $url);

curl_setopt($curl, CURLOPT_HEADER, false);

curl_setopt($curl, CURLOPT_RETURNTRANSFER, true);

curl_setopt($curl, CURLOPT_NOBODY, true);

curl_setopt($curl, CURLOPT_POST, true);

curl_setopt($curl, CURLOPT_POSTFIELDS, $curlPost);

$return_str = curl_exec($curl);

curl_close($curl);

return $return_str;

}

//将 xml数据转换为数组格式。

function xml_to_array($xml){

$reg = "/]*>([\\x00-\\xFF]*)/";

if(preg_match_all($reg, $xml, $matches)){

$count = count($matches[0]);

for($i = 0; $i < $count; $i++){

$subxml= $matches[2][$i];

$key = $matches[1][$i];

if(preg_match( $reg, $subxml )){

$arr[$key] = xml_to_array( $subxml );

}else{

$arr[$key] = $subxml;

}

}

}

return $arr;

}

//random() 函数返回随机整数。

function random($length = 6 , $numeric = 0) {

PHP_VERSION < '4.2.0' && mt_srand((double)microtime() * 1000000);

if($numeric) {

$hash = sprintf('%0'.$length.'d', mt_rand(0, pow(10, $length) - 1));

} else {

$hash = '';

$chars = 'ABCDEFGHJKLMNPQRSTUVWXYZ23456789abcdefghjkmnpqrstuvwxyz';

$max = strlen($chars) - 1;

for($i = 0; $i < $length; $i++) {

$hash .= $chars[mt_rand(0, $max)];

}

}

return $hash;

}

//短信接口地址

$target = "http://106.ihuyi.com/webservice/sms.php?method=Submit";

//获取手机号

$mobile = $_POST['mobile'];

//获取验证码

$send_code = $_POST['send_code'];

//生成的随机数

$mobile_code = random(4,1);

if(empty($mobile)){

exit('手机号码不能为空');

}

//防用户恶意请求

if(empty($_SESSION['send_code']) or $send_code!=$_SESSION['send_code']){

exit('请求超时,请刷新页面后重试');

}

$post_data = "account=用户名&password=密码&mobile=".$mobile."&content=".rawurlencode("您的验证码是:".$mobile_code."。请不要把验证码泄露给其他人。");

//查看用户名 登录用户中心->验证码通知短信>产品总览->API接口信息->APIID

//查看密码 登录用户中心->验证码通知短信>产品总览->API接口信息->APIKEY

$gets = xml_to_array(Post($post_data, $target));

if($gets['SubmitResult']['code']==2){

$_SESSION['mobile'] = $mobile;

$_SESSION['mobile_code'] = $mobile_code;

}

echo $gets['SubmitResult']['msg'];

python短信验证码登录_Python实现短信验证相关推荐

  1. python发送短信验证码登录_python发送短信验证码

    原标题:python发送短信验证码 业务: 手机端点击发送验证码,请求发送到python端,由python调用榛子云短信http://smsow.zhenzikj.com的短信接口,生成验证码并发送. ...

  2. python短信验证码登录_Python手机验证码登录

    PHP代码示例 //接口类型:互亿无线触发短信接口,支持发送验证码短信.订单通知短信等. // 账户注册:请通过该地址开通账户http://user.ihuyi.com/register.html / ...

  3. python爬虫手机验证码登录_python爬虫解决手机验证码问题

    一.安卓手机安装tasker软件增强工具 官网:https://tasker.joaoapps.com/ 网上也有中文版的,自行搜索 1.打开tasker界面,点击右下加号 2.点击配置文件类型,选择 ...

  4. 5.Spring Security 短信验证码登录

    Spring Security 短信验证码登录 在 Spring Security 添加图形验证码一节中,我们已经实现了基于 Spring Boot + Spring Security 的账号密码登录 ...

  5. 【每日随笔】电子签名 ( 下载 “e 签保“ 应用 | 使用 手机号 + 短信验证码 登录 | 发起签署 | 签名 | 获取签名后的 PDF 文件及出证信息 )

    文章目录 一.下载 "e 签保" 应用 二.使用 手机号 + 短信验证码 登录 三.发起签署 四.签名 五.获取签名后的 PDF 文件及出证信息 一.下载 "e 签保&q ...

  6. java antd实现登录,基于 antd pro 的短信验证码登录

    概要 整体流程 前端 页面代码 请求验证码和登录的 service (src/services/login.js) 处理登录的 model (src/models/login.js) 后端 短信验证码 ...

  7. Abp Core 添加短信验证码登录(动态密码登录)

    交流QQ群:555913397 有什么问题可以加群大家一起交流 Abp Core 添加短信验证码登录(动态密码登录) 现目前我国网站的已经很少使用电子邮箱了,基本上都是手机号作为账号,有时候粗心的用户 ...

  8. OAuth2.0 - 自定义模式授权 - 短信验证码登录

    一.OAuth2.0 - 自定义模式授权 上篇文章我们分析了目前的情况,演示了微服务的大环境下在保证安全的情况下通过SpringGateWay实现统一的鉴权处理,但是前面的演示中,我们都是基于用户名密 ...

  9. 手机发送短信验证码登录完整实例

    项目需求 后台生成随机6位数作为验证码,发送给手机,同时将验证码存入缓存,用户登录时验证输入的验证码是否过期或者是否正确. 一.发送短信 1.了解短信发送 通过发送短信的API,建立一个URL类的对象 ...

  10. 短信验证码登录流程思路及详细步骤

    点击蓝色"java大数据修炼之道"关注我哟加个"星标",每晚21:00,一起学技术 来源: blog.csdn.net/classabcd/article/de ...

最新文章

  1. libsvm库简介及使用
  2. hibernate的中文问题的解决方案
  3. 试题以文件的形式存在C语言,2016年计算机二级C语言上机题库
  4. ubuntu python_Ubuntu配置VSCode的python和C++环境
  5. python手把手入门_新手必看:手把手教你入门 Python
  6. springboot+springsecurity+mybatis plus之用户授权
  7. java list 转数组_数组转List,一定要小心这个坑!
  8. python机制_python 加载模块机制
  9. 网页标题设置,为什么在SERP中,显示结果不一致?
  10. 密码学专题 文本数据库
  11. Linux的shell编程(二)
  12. 多文件结构和编译预处理命令
  13. 计算机二级c语言数组ppt,计算机二级C语言考试C语言学习第5讲.ppt
  14. 平面图判连通 蓝桥杯模拟赛题
  15. 自己动手写操作系统(三)
  16. protues7 使用笔记
  17. 认知图谱:知识图谱+认知推理+逻辑表达
  18. csgo fps不稳定和服务器,CSGO fps不稳定,求FPS 优化设置
  19. matlab三个坐标,[MATLAB基础] 画有一个有xyz三个坐标的图
  20. ubuntu系统调节显卡GPU风扇转速

热门文章

  1. 手动打开与关闭软键盘
  2. 工大助手--加权平均分计算
  3. unreal歌曲百度云下载_Unreal_Engine_4_1
  4. 什么是index.html? 如何创建和使用index.html?
  5. 安装gooreplacer插件为含有googlefonts api的网页提速
  6. 转载:MATLAB中怎么表示对数函数及e
  7. python猜字游戏
  8. 计算机科学与技术[计算机及应用](本科)自考
  9. verilog 四舍五入_Verilog进行饱和与截位操作
  10. java fillrect_Java graphics2D fillRect无法使用半透明颜色正常...