注册时手机验证码功能的实现
2015-07-13 17:37
134 查看
这也是我第一次接触在注册时,手机发送验证码,然后提交表单时并验证验证码是否正确,其实很简单,就是调一个简单的短信平台提供的接口。并且配有详细的文档说明。
public function yanzheng(){
$phone = $_POST['phone']; ①
$code = $_POST['code']; ②
$pwd = strtoupper(md5('XXX-XXX-XXX-XXXXX'.'XXXXXXXX')); ③
$gateway="http://sdk2.entinfo.cn:8061/mdsmssend.ashx?sn=XXX-XXX-XXX-XXXXX&pwd={$pwd}&mobile={$phone}&content={$code}[测试短信]&ext=&stime=&rrid=&msgfmt="; ④
file_get_contents($gateway); ⑤
echo $code; ⑥
}
只要把上边对应的XXX的内容改成短信平台提供的接口即可。
之后的验证用户输入的用户名和密码是否正确的时候,我采用的是判断⑥中返回的验证码信息,和用户在注册时输入的验证码的信息是否一致。一致则完成注册。
上边的思维是我自己的想法不知道对不对,后来我和同事交流,同事说他使用手机验证码的时候,分为两步:第一步,向短信服务平台,提供手机号码,这个时候短信服务平台会自动发送短信信息在相应的手机上,之后再验证的时候,在调一次,把前边提到的手机号码和验证码一起提供给短信服务平台,此时,会有一个返回值,根据返回值判断即可。
public function yanzheng(){
$phone = $_POST['phone']; ①
$code = $_POST['code']; ②
$pwd = strtoupper(md5('XXX-XXX-XXX-XXXXX'.'XXXXXXXX')); ③
$gateway="http://sdk2.entinfo.cn:8061/mdsmssend.ashx?sn=XXX-XXX-XXX-XXXXX&pwd={$pwd}&mobile={$phone}&content={$code}[测试短信]&ext=&stime=&rrid=&msgfmt="; ④
file_get_contents($gateway); ⑤
echo $code; ⑥
}
只要把上边对应的XXX的内容改成短信平台提供的接口即可。
之后的验证用户输入的用户名和密码是否正确的时候,我采用的是判断⑥中返回的验证码信息,和用户在注册时输入的验证码的信息是否一致。一致则完成注册。
上边的思维是我自己的想法不知道对不对,后来我和同事交流,同事说他使用手机验证码的时候,分为两步:第一步,向短信服务平台,提供手机号码,这个时候短信服务平台会自动发送短信信息在相应的手机上,之后再验证的时候,在调一次,把前边提到的手机号码和验证码一起提供给短信服务平台,此时,会有一个返回值,根据返回值判断即可。
相关文章推荐
- sublime插件insertDate显示ISO时间
- 一个适合初学者看的java开发环境搭建
- 在同一台服务器上配置多个Tomcat
- unity3d 实现夜视仪效果
- 实时错误 \'-2147217887\'及思考
- mySQL安装后,mysql server instance configuration wizard 未响应
- EAS Web开发中F7控件支持横向滚动条问题
- 【转载】当英文遇上汉语,就知道汉语有多强大了
- 实时错误91+用户定义类型未定义
- 实时错误‘381’ 下标越限
- 实时错误3021
- shell中sed命令
- 颜色表及html代码
- 在 Web 项目中应用 Apache Shiro
- Fiddler Post Debug
- hust2015暑假集训 0713 A a dangerous trip
- 【转载】飞翔,从这里开始
- echo的高级用法-颜色输出与光标定位
- YTKNetwork
- [渗透测试] 旁注攻击