1. ホーム
  2. Web プログラミング
  3. PHP プログラミング
  4. phpの例

WeChatの小さなプログラムは、ログイン後に携帯電話番号を取得するためにThinkPHP5の承認と組み合わせます。

2022-01-14 19:16:16

1. ログインを認証した後、ユーザーのsessionKeyを取得しますが、これは電話番号の取得に不可欠な要素です。

のコード

wxmlです。

<button open-type="getPhoneNumber" bindgetphonenumber="getPhoneNumber">Get phone number</button>

jsです。このメソッドを呼び出すと、コンソールに出力されます e 下の2つの赤いボックスも、電話番号の取得に不可欠な要素です。

getPhoneNumber: function (e) {
        var that = this;
        console.log(e.detail.errMsg == "getPhoneNumber:ok");
        if (e.detail.errMsg == "getPhoneNumber:ok") {
            wx.request({
                url: 'http://www.phone.com/test/Seek/getPhone',
                data: {
                    encryptedData: e.detail.encryptedData,
                    iv: e.detail.iv,
                    sessionKey: that.data.session_key,
                },
                method: "post",
                success: function (res) {
                    console.log(res);
                }
            })
        }
      },

次にThink PHP 5のバックエンドコードですが、コードを書く前に公式のフォルダをダウンロードする必要があります。

のURLです。 オープンデータへのサーバーサイドのアクセス|WeChat Open Documentation

 ダウンロードすると、4つの言語があり、PHPの言語だけが必要です。

 PHP フォルダを Think PHP 5 のアプリディレクトリに置き、以下のようにフォルダ名を変更することを忘れないようにしましょう。

次に、WXBizDataCrypt.phpに名前空間を追加し、ErrorCode.phpファイルを導入します。

次に、WXBizDataCrypt.phpをコントローラに導入します。

use app\libs\WXBizDataCrypt;

次に、PHPのコードを書きます。

public function getPhone(){
        $encryptedData = input('encryptedData');
        $iv = input('iv');
        $sessionKey = input('sessionKey');
        $appID = config('appID');
 
        $data = null;
        $pc = new WXBizDataCrypt($appID, $sessionKey);
        $errCode = $pc->decryptData($encryptedData, $iv, $data );
        $data = json_decode($data,true);
        return json($data);
    }

最後に、アプレットに戻り、もう一度実行すると、次のようになります。

この記事は、WeChatのアプレットは、ログイン後に携帯電話番号を取得するためにThinkPHP5認証と組み合わせて、このことについてすべてです、携帯電話番号の内容を取得するために、より関連するアプレットは、スクリプトハウスの以前の記事を検索するか、次の関連記事を閲覧し続けるあなたは、将来的に多くのスクリプトハウスをサポートしますことを願って!...