嗯哼,做为一个好的程序猿,一定要给顾客爸爸剁手的时候,充分的告诉他,你剁完手了,所以不只有邮件通知还要有手机短信的通知,今天就来写一下php发送验证码

1、首先我就写了几个个方法,因为配置在后台,直接取就好了,有的需要表单提交过来,只需要接收一下,把对应的值写一下就好了,这个函数或许麻烦一点,但是仔细看,不麻烦的

get_captcha()函数,直接访问,就能发送验证码

//发送验证码
function get_captcha1(){
$phone="";
if(!preg_match("/^1[3456789]{1}\d{9}$/",$phone)){
exit("手机号格式不正确");
}
if(time()-$_SESSION['last_send_time']<){
exit("短信发送太频繁了!");
}
if($phone ){
$r = rand(,);
$content = '本次验证码为:'.$r.",十分钟内有效.【新华好房】";
$rs = sendSms($phone,$content);//调用函数sendSms()
if($rs==true){
$_SESSION['last_send_time'] = time();//将时间存进session
echo 'ok';exit("");
}
}
}
sendSms()函数
function sendSms($mobile,$msg){
if(!$mobile && !$msg){
return false;
}
$post="action=send&userid=376&account=zyjtz&password=kk123321yy&mobile=$mobile&content=$msg&sendTime=&extno=";
  //组成链接,把对应的userid和account写对,其实不同的短信接口有不同的方式,有的话根据供应商给的接口来写
$xml=http_post('http://115.29.242.32:8888/sms.aspx', $post);//调用http_post()函数
$res = @simplexml_load_string($xml,NULL,LIBXML_NOCDATA);
$res = json_decode(json_encode($res),true);
if($res['returnstatus']=='Success'){
return true;
}
return false;
//print_test($res);
}
http_post()函数
function http_post($url, $post = '', $timeout = , $times = ) {
$stream = stream_context_create(array('http' => array('header' => 'Content-type: application/x-www-form-urlencoded', 'method' => 'POST', 'content' => $post, 'timeout' => $timeout)));
while($times-- > ) {
$s = file_get_contents($url, NULL, $stream, , );
if($s !== FALSE) return $s;
}
return FALSE;
}
 先到这里,我们今天下班了,劳动节快乐,回来如果我还能记得,写的详细一点,这样只能发送验证码,里面很多东西没加,比如不能多次发送,防止注册机注册等,所以呢,回来再更新。
 

 

php 发送手机验证码的更多相关文章

  1. asp.net限时发送手机验证码

    html代码 <p> <strong>手机验证码:</strong> <asp:TextBox ID="code" runat=" ...

  2. C#发送手机验证码

    C#发送手机验证码,平台有很多,我就说说其中的1个平台 测试环境:.net2.0 测试效果:速度还可以,10秒内接收短信 1.去http://www.yuntongxun.com注册,会送8元测试金额 ...

  3. django 发送手机验证码

    一.流程分析: 1.用户在项目前端,输入手机号,然后点击[获取验证码],将手机号发到post到后台. 2.后台验证手机号是否合法,是否已被占用,如果通过验证,则生成验证码,并通过运行脚本,让短信运营商 ...

  4. Asp.Net发送手机验证码

    C#发送手机验证码,平台有很多,我就说说其中的1个平台 测试环境:.net2.0 测试效果:速度还可以,10秒内接收短信 1.去http://www.yuntongxun.com注册,会送8元测试金额 ...

  5. C# WinForm 使用SMS接口发送手机验证码+图形验证码+IP限制

    https://blog.csdn.net/IT_xiao_guang_guang/article/details/104299983 前言   1.发送手机验证码用的是网建的SMS接口(http:/ ...

  6. Java实现发送手机验证码功能(短信+语音)

    利用第三方平台可以实现发送手机短信验证码和语音验证码的功能,本文使用框架是struts2+spring+hibernate,现就action层给出核心代码功能. public class Verify ...

  7. flask+阿里云短信服务实现注册发送手机验证码

    效果图: 该效果主要讲解实现通过调用阿里云的SDK实现发送注册验证码短信(阿里云短信付费使用) 购买阿里云短信服务 购买链接:https://www.aliyun.com/product/sms 1. ...

  8. [.NET开发] C#实现发送手机验证码功能

    之前不怎么了解这个,一直以为做起来很复杂. 直到前两天公司要求要做这个功能. 做了之后才发现 这不过就是一个POST请求就能实现的东西.现在给大家分享一下,有不足之处还请多多指教. 废话不多说 直接上 ...

  9. iOS --发送手机验证码收不到手机验证码

    方法一:使用受信任设备上显示的验证码. 如果您的受信任设备是iOS 9 及以上系统时,则验证码将自动显示在受信任设备上.此时你信任的设备上会弹出你在某地登录ID位置的小地图,有一个选择允许与不允许登录 ...

随机推荐

  1. batchsize用法 以及实现前向运算的矩阵乘法方式

    batchsize用法 以及实现前向运算的矩阵乘法方式 待办 使用batchsize可以把矩阵缩小,采用矩阵乘法的形式可以一次计算多个经过神经网络的结果,然后通过交叉熵进行计算总的损失得到结果. 所以 ...

  2. 查看杀死django进程

    #命令:#用于显示tcp,udp的端口和进程等相关情况netstat -tunlp"""ps:-t (tcp)仅显示tcp相关选项-u (udp)仅显示udp相关选项-n ...

  3. [POI2007] OSI-Axes of Symmetry

    Description Luogu3454 BZOJ1100 Solution 把边和角顺次放入一个数组里,如果一个点为中心的回文串的半径大于\(n\),那就一定是一个对称轴.跑一遍manacher就 ...

  4. 执行PDB的PITR恢复失败的说明

    Oracle 12.1版本中,UNDO表空间仅存在CDB级别(共享UNDO),来自于AskScuti博客园. Oracle 12.2版本开始,UNDO表空间同时可以存在每个PDB级别(本地UNDO). ...

  5. hadoop cdh 后启动群起脚本总是起不起来的一些坑

    最近都在流行大数据什么的,然后偶然之间加入了一个物联网的小公司,可以使用hadoop 来做数据分析,于是心中窃喜,可以有机会接触大数据了,从此走上人生巅峰赢取白富美. 可是成功的道路总不是一帆风顺滴, ...

  6. AcWing 897. 最长公共子序列

    #include <iostream> #include <algorithm> using namespace std; ; int n, m; char a[N], b[N ...

  7. Axure 8.1.0.3377 激活码 授权码 (亲测有效)

    适用版本 Axure 8.1.0.3377 zdfans.com gP5uuK2gH+iIVO3YFZwoKyxAdHpXRGNnZWN8Obntqv7++FF3pAz7dTu8B61ySxli 亲测 ...

  8. 使用命令把SpringBoot项目打包成可运行的jar包(简洁,操作性强)

    前几天接到一个需求,要把原系统中一个数据处理小功能搬出原系统,拉出来单独做一个SpringBoot项目,然后打成jar包扔到Windows服务器上运行,这样数据处理的时候如果遇到堵塞就不至于整个系统都 ...

  9. NotePad++安装及配置

    NotePad++是一款轻量级的语言开发工具,是学习编程语言入门工具. 下面介绍下配置方法(Java为例) 配置插件NppExec 配置JAVA编译命令javac 配置JAVA运行命令java 上述两 ...

  10. linux服务器上部署springboot项目,并让他持续运行到后台

    我们知道在运行springboot 项目只需要java -jar + 项目的war包(jar包)名. 但是只要终端已停止那么服务就会被关闭,也就无法访问到我们的项目了.所以我们可以使用守护进程的方式来 ...