中国は確認コードを送信するためにネットワークを構築します

私たちは、まず、中国が(設定されていないが、使用することはできません)ネットワークの署名を構築して設定する必要があります。

 

 

 

 

時間は、鍵を取り、UID送信するために必要な後

 

 

 

 

 

 

次に、コードを書き始めることができます

 

common.phpがファイルを書かれたこれらの2つの方法は、私は(thinkphpフレームが共通して書き込むことができます)fastadminフレームを使用して、あなたは直接他の場所で呼び出すことができます


IF(!function_exists( 'sendSms')){
/ **
*テキストメッセージ
* @param $携帯int型の電話番号が
* @paramの$コンテンツの文字列メッセージの内容
* @return配列
* /
関数sendSms($モバイル、$コンテンツ){
$ UID = '******'; // UIDの上に取得
$ PWD = '***************************************'; //キーの上に取得
$ = URL「HTTP:// UTF8。 sms.webchinese.cn/?Uid='.$uid.'&Key='.$pwd.'&smsMob='.$mobile.'&smsText='.$content;
$文字列= smsCURL($ URL);
IF($ > 0の文字列){//は正常に送信され
$ =データアレイ(
'コード' => 1、
'MSG' => "に成功し、送信メッセージを"
;)
}他{
$データ=配列(
'コード' => 0、
'MSGは' =>、 "SMSに失敗しました"
);
}
$のデータを返します;
}
}

(!function_exists( 'smsCURL')){もし
/ **
*カール
* @param $ URL文字列请求地址
* /
関数smsCURL($ URL = ''){
$ CH = curl_init();
$タイムアウト= 5;
ますcurl_setopt($ chの、CURLOPT_URL、$ URL);
ますcurl_setopt($ chの、CURLOPT_RETURNTRANSFER、1);
ますcurl_setopt($ chの、CURLOPT_CONNECTTIMEOUT、$タイムアウト)。
$ file_contents = curl_exec($ chの);
curl_close($ chの);
$ file_contentsを返します。
}
}

 

アプリケーション/共通/ライブラリフォルダの下に見られる一般的な方法で仕上げ2、後は、書き換えられます方法を送信するために、Sms.phpを見つけます。

=> $時間]);         もし(!$のSMS){

















falseを返します。
}他{
trueを返します。
}
}他{
falseを返します。
}
}

 

他の場所で呼び出します。

SMS ::送信($モバイル、mt_rand(1000年、9999)、 "登録")。


コール:


/ **
*送信コード
*
* @param携帯電話番号文字列$
* @param列$型タイプ
* /
パブリックSENDMSG関数()
{
$モバイル=の$ this - >要求- > PARAM( 'モバイル');
IF( !$モバイル){
の$ this - >エラー(__( '無効なパラメータ'));
}
   //定期的なチェックのために
(検証::正規表現($!の場合 、モバイル、 "^ 1 \ D {10} $")) {
の$ this - >エラー(__( 'ここで間違ってモバイルでは'));
}
   //バインドまたは登録かどうかを決定する
$ユーザー= Dbの::名前( " - >フィールド( "ID") -ユーザーを")> WHERE( "モバイル"、$モバイル) - >検索();
IF {(空($ユーザー)!)
の$ this - >エラー( "電話番号がバインドされてきました");
}
   //送信コードの呼び出し
であれば(SMS ::送信($モバイル 、mt_rand(1000、9999)、) "登録"){
の$ this - >成功( "正常に送信され");
}他{
の$ this - >エラー( "送信失敗");
}
}

   / ** 
*校验验证码
*
* @param stringが$モバイル手机号
* @paramの文字列$キャプチャ验证码
* /
パブリック関数checkCaptcha()
{
$ this-モバイル= $>要求- >のparam( "モバイル");
$キャプチャ=の$ this - >要求- >のparam( "キャプチャ");
$タイプ= "登録";
(!$キャプチャ){場合
の$ this - >エラー(__( '無効なパラメータ'));
}
(検証::正規表現($モバイル、 "^ 1 \ D {10} $")!){場合
の$ this - >エラー(__( 'Mobileは間違っています'));
}
$ RET = SMSの::チェック($モバイル、$キャプチャ、$型);
もし(!$ RET){
の$ this - >

SMS ::フラッシュ($モバイル、$型);

$ユーザー= Dbの::名前( "ユーザー") - >フィールド( "ID") - >ここで、(、 "モバイル" $モバイル) - >()を見つけます。
(!空($ユーザー)){場合
の$ this - >エラー( "该手机号已被绑定");
}

であれば(DB ::名( "ユーザ") - >ここで、( "ID"、$この- > _ユーザ[ "ID") - > setField()、 "モバイル" $モバイル){
の$ this - >成功( "绑定成功");
} {他
の$ this - >エラー( "绑定失败")。
}
}

 

おすすめ

転載: www.cnblogs.com/j-jian/p/11908368.html