Example #1
0
File: sms.php Project: xtha/salt
#!/usr/bin/php -q
<?php 
include 'HttpSend.php';
$sender = new HttpSend();
##############################################
# Varibles for Send SMS
##############################################
$strReg = "101100-WEB-HUAX-643368";
$strPwd = "HEXZUKPF";
$strSourceAdd = "";
$strTim = $sender->gbkToUtf8("2012-2-17 15:00:00");
##############################################
# Varibles for Register an New Account
##############################################
$strUname = $sender->gbkToUtf8("test");
$strMobile = "13391750000";
$strRegPhone = "01065685318";
$strFax = "01065685318";
$strEmail = "*****@*****.**";
$strPostcode = "100080";
$strCompany = $sender->gbkToUtf8("test");
$strAddress = $sender->gbkToUtf8("testja");
$strNewPwd = "AAAAAAAA";
$strRegUrl = "http://www.stongnet.com/sdkhttp/reg.aspx";
$strBalanceUrl = "http://www.stongnet.com/sdkhttp/getbalance.aspx";
$strSmsUrl = "http://www.stongnet.com/sdkhttp/sendsms.aspx";
$strSchSmsUrl = "http://www.stongnet.com/sdkhttp/sendschsms.aspx";
$strStatusUrl = "http://www.stongnet.com/sdkhttp/getmtreport.aspx";
$strUpPwdUrl = "http://www.stongnet.com/sdkhttp/uptpwd.aspx";
##############################################
# Params for API
Example #2
0
<?php

include 'HttpSend.php';
$sender = new HttpSend();
//以下为所需参数,测试时请修改,中文参数请转码
$strReg = "101100-WEB-HUAX-111111";
//注册号(由华兴软通提供)
$strPwd = "BBBBBBBB";
//密码(由华兴软通提供)
$strSourceAdd = "";
//子通道号,可为空(预留参数一般为空)
$strTim = $sender->gbkToUtf8("2012-2-17 15:00:00");
//定时发送时间,时间格式yyyy-MM-dd HH:mm:ss,含有空格请转码
$strPhone = "13391750223,18701657767";
//手机号码,多个手机号用半角逗号分开,最多1000个
$strContent = $sender->gbkToUtf8("h!@#\$%^&*(){}[];ttpPH再来一冷色P华测P");
//短信内容
$strUname = $sender->gbkToUtf8("华测");
//用户名,不可为空
$strMobile = "13391750000";
//手机号,不可为空
$strRegPhone = "01065685318";
//座机,不可为空
$strFax = "01065685318";
//传真,不可为空
$strEmail = "*****@*****.**";
//电子邮件,不可为空
$strPostcode = "100080";
//邮编,不可为空
$strCompany = $sender->gbkToUtf8("通软兴华");
//公司名称,不可为空
Example #3
0
            if ($flag) {
                $strRes = $sender->postSend($sms_url, $send_sms);
                die(urldecode(json_encode(array('success' => '短信已发送,请查收!'))));
            }
            exit;
        }
    }
}
//发送短信验证码
if ($user_info) {
    $num = rand(100000, 999999);
    //保存验证码
    //echo $num;
    require_once 'HttpSend.php';
    //发送短信
    $sender = new HttpSend();
    //以下为所需参数,测试时请修改,中文参数请转码
    $strReg = "101100-WEB-HUAX-458221";
    //注册号(由华兴软通提供)101100-WEB-HUAX-458221
    $strPwd = "AAAAAAAA";
    //密码NIRGSEBM(由华兴软通提供)AAAAAAAA
    $strSourceAdd = "";
    //子通道号,可为空(预留参数一般为空)
    $strPhone = $mobile;
    //手机号码,多个手机号用半角逗号分开,最多1000个
    $strContent = "您的验证码为:" . $num . "【笨虎科技】";
    //以下参数为服务器URL,以及发到服务器的参数,不用修改
    $strSmsUrl = "http://www.stongnet.com/sdkhttp/sendsms.aspx";
    $strSmsParam = "reg=" . $strReg . "&pwd=" . $strPwd . "&sourceadd=" . $strSourceAdd . "&phone=" . $strPhone . "&content=" . $strContent;
    $user_id = $user_info['user_id'];
    $sql = "SELECT user_id from ecs_verified_sms where user_id={$user_id}";
 /**
  * 请求短信验证码
  */
 function vrcode()
 {
     if (!$_POST['phone']) {
         return self::re(C('emp_phone'));
     }
     $isreg = $_POST['isreg'];
     if (!$_POST['isreg']) {
         $isreg = 0;
     }
     $phone = $_POST['phone'];
     //file_put_contents("/tmp/test.log", '########vrphone='.$phone.'#######'."\n",FILE_APPEND);
     //$isreg=1;
     if (!$isreg) {
         $phone = $this->phone_judgment_li($phone);
         //获取用户的手机号码,判断是否已经是注册过的用户。
         if (!$phone) {
             file_put_contents("/tmp/test.log", '########vrphone=' . $phone . '#######' . "\n", FILE_APPEND);
             file_put_contents("/tmp/test.log", '#######not regist phone########' . "\n", FILE_APPEND);
             return self::re(C('error_login'), 'not regist phone');
         }
     } else {
         $c = self::phone_ex($phone);
         if ($c) {
             file_put_contents("/tmp/test.log", '########vrphone=' . $phone . '#######' . "\n", FILE_APPEND);
             file_put_contents("/tmp/test.log", '#######phone_ex########' . "\n", FILE_APPEND);
             return self::re(C('phone_ex'));
         }
     }
     //$developerphone = explode(",", DEVELOPERPHONE); //特殊开发者(做注册等有关测试的开发者)手机号码绕过短信下发限制
     //                if (in_array($phone, $developerphone)) {
     //                    $sms_limit_flag = 1;
     //                } else {
     //                    $sms_limit_flag = sms_limit($phone, 10);    //限制每天,每个手机号码最大下行短信(验证码)数量:10条.变量$sms_limit_flag为1,则未超过;为0,则超过10条,一天内不再下发.
     //                }
     $sms_limit_flag = $this->sms_limit($phone, 20);
     //限制每天,每个手机号码最大下行短信(验证码)数量:20条.变量$sms_limit_flag为1,则未超过;为0,则超过10条,一天内不再下发.
     if (!$sms_limit_flag) {
         return self::re(C('error_login'), 'sms limit');
     }
     $code = $this->generate_randcode(4, 2);
     //$ct='验证码'.$code.',用户注册或重置密码,请注意保密。';
     $ct = urlencode("#code#=" . $code);
     $sender = new HttpSend();
     //$strParam = C('SMS_PK_SN').'='.C('sms_sn').'&'.C('SMS_PK_PWD').'='.C('sms_pwd').'&sourceadd=&'.C('SMS_PK_PHONE').'='.$phone.'&'.C('SMS_PK_CON').'='.$ct;
     $strParam = C('SMS_PK_SN') . '=' . C('sms_sn') . '&' . C('SMS_PK_PWD') . '=' . C('sms_pwd') . '&tpl_id=57&' . C('SMS_PK_PHONE') . '=' . $phone . '&' . C('SMS_PK_CON') . '=' . $ct;
     $strRes = $sender->postSend(C('SMS_HOST'), $strParam);
     //file_put_contents("/tmp/test.log", '########strres='.$strRes.'#######'."\n",FILE_APPEND);
     $resArray = array();
     //parse_str($strRes,$resArray);
     $resArray = json_decode($strRes, TRUE);
     //file_put_contents("/tmp/test.log", '########result='.$resArray['error_code'].'#######'."\n",FILE_APPEND);
     //file_put_contents("/tmp/test.log", '########message='.$resArray['reason'].'#######'."\n",FILE_APPEND);
     if ($resArray['error_code'] != '0') {
         file_put_contents("/tmp/test.log", '########message=' . $resArray['reason'] . '#######' . "\n", FILE_APPEND);
         return self::re($resArray['error_code'], $resArray['reason']);
     }
     //                $trans = array("\r\n" => "");
     //                $strRes= strtr($strRes,$trans);
     //                file_put_contents("/tmp/test.log", '########result='.$strRes.'#######'."\n",FILE_APPEND);
     //                $xml = simplexml_load_string($strRes);
     //                file_put_contents("/tmp/test.log", '########error='.$xml->error.'#######'."\n",FILE_APPEND);
     //                file_put_contents("/tmp/test.log", '########mess='.$xml->message.'#######'."\n",FILE_APPEND);
     //                if($xml->error!='0'){
     //                    return self::re($xml->error, $xml->message);
     //                }
     $redis = RedisConnectSingleton::GetRedisInstance(C('REDIS_DB_VRCODE'))->GetRedisConnect();
     $redis->set($phone . '_code', $code);
     $redis->expire($phone . '_code', 300);
     return self::re(0);
 }