本帖最后由 郭辉 于 2016-2-22 15:44 编辑
无论是电脑版还是手机版,都是同样的结构与方法。
第一步
- 如果是PC端进入“项目根目录/sms/sms.php”,手机端则进入"项目根目录/mobile/sms/sms.php"
- 找到function sendSms($mobile,$content,$time=' ',$mid=' ' )全部屏蔽或删除,将这个方法修改为下面语句:
- 如果使用php5版本以上的soap功能,需要再php.ini中开启php_soap扩展,一般服务器默认是关闭的,如使用phpstudy则点击右键,依次选择PHP扩展及设置,PHP扩展,然后将php_soap前面打勾,然后重启phpstudy即可
- function sendSMS($mobile,$content){
- $spID='000196'; //请根据自己的账户修改
- $password = '123456qwe'; //请根据自己的账户修改
- $accessCode = '1069032239089188'; //请根据自己的账户修改
- try {
- $client=new soapclient('http://113.105.65.138:7801/sms?WSDL',array('encoding'=>'utf-8'));
-
- $client->Submit($spID,$password,$accessCode,$content,$mobile);
- return true;
- } catch (SoapFault $fault){
- return false;
- }
- }
复制代码
第二步
- 如果是PC端进入“项目根目录/register.php”,手机端则进入"项目根目录/mobile/register.php"
- 找到function action_send_mobile_code()方,在这个方法中找到$result=sendSmSAli($mobile_phone,$mobile_code),然后替换为$result=sendSMS($mobile_phone,$content),接下来大约235行左右,将echo "短信验证码发送成功"修改为 echo "ok";
复制代码
第三步- 如果是PC端进入“项目根目录/js/register.js”,手机端则进入"项目根目录/mobile/js/register.js"
- 找到function sendMobilePhone(mobileObj , mobileCodeObj , sendButton)方法修改为以下内容:
- function sendMobileCode(mobileObj, mobileCodeObj, sendButton) {
-
- checkMobileCode(mobileObj, function(result) {
- if (result) {
- // 发送邮件
- var url = 'register.php?act=send_mobile_code';
- $.post(url, {
- XDEBUG_SESSION_START: 'ECLIPSE_DBGP',
- mobile_phone: mobileObj.val()
- }, function(result2) {
-
- result2 = result2.replace(/(^\s*)|(\s*$)/g, "")
-
- if (result2 == 'ok') {
- // 倒计时
- countdown(sendButton);
- } else {
- alert(result2);
- }
- }, 'text');
- }
- });
- }
复制代码
第四步
- 如果是PC端进入“项目根目录/includes/lib_common.php”,手机端则进入"项目根目录/mobile/includes/lib_common.php"
- 找到function is_mobile_phone($mobile_phone) 将$chars=' ' ;修改为$chars = "/^13[0-9]{1}[0-9]{8}$|15[0-9]{1}[0-9]{8}$|18[0-9]{1}[0-9]{8}$|17[0-9]{1}[0-9]{8}$/";
- 按照上面四步之后就可以将进行发送验证码啦。
- 如果需要在任意地方加入发放验证码功能,只需要加上下面四行代码即可轻松发送短信。
- require_once (ROOT_PATH . 'sms/sms.php');
- $content="短信内容";
- $mobile="手机号";
- sendSMS($mobile,$content);
复制代码
|