ホームページ  >  記事  >  バックエンド開発  >  PHP は QQ ログイン原則とプロセス共有を実装します

PHP は QQ ログイン原則とプロセス共有を実装します

小云云
小云云オリジナル
2018-02-05 09:13:261260ブラウズ

エディターはかつて HTML を使用して QQ ログイン ページを模倣していましたが、PHP で QQ ログインを実装する原則の方がまだ優れています。サードパーティ ログインとは、QQ、WeChat、Weibo などの使い慣れたサードパーティ ソフトウェアを使用してログインすることを意味します。これにより、アカウントを登録する必要がなくなり、ユーザーを迅速に維持し、比較的複雑な登録プロセスを排除できます。次に、PHPを使用してQQログイン機能を開発する方法を説明します。

1. QQ Internet 公式 Web サイトにアクセスしてログインします (独自の QQ を使用することも、管理用にプロジェクトの別の QQ として QQ 番号を再登録することもできます)。アドレス: https://connect.qq.com /

2. [アプリケーション管理] をクリックすると、QQ インターネット管理センターが表示され、Web サイト アプリケーションとモバイル アプリケーションに分かれた関連アプリケーションが作成されます。情報を記入したいアプリを選択してください (審査には約 7 日かかります) アプリ ID

を取得しますので、小さなノートに書き留めてください。ぜひノートに書いて書いてみてください!ぜひノートに書いて書いてみてください! (重要なことは 3 回言ってください!!!)

3. レビューに合格したら、関連するインターフェイスを取得します: get_user_info。

4. QQ Internet に関連するデモをダウンロードします。 http://wiki.connect.qq.com/sdk%E4%B8%8B%E8%BD%BD PHP SDK v2.1

5 をダウンロードしました。 4 つのフォルダーと 2 つのファイルが含まれていることがわかりますが、残りは無視しても問題ないと思います (このドキュメントを順を追って読んでください)。ログイン機能を実装します。

6. APIフォルダーをプロジェクトにコピーします。プロジェクトのどのフォルダーにコピーするかは、事前に準備してからコードを書きます。 。

7. プロジェクトにコピーした API フォルダーを開きます。その中に comm フォルダーがあります。それを開くと、inc.php という名前のファイルが表示されます。上記で記録した APPID と APPKEY をノートブックの該当する位置に記入します。おおよその形式は次のとおりです

55e98c1d26cba6a8fe1e534260024a65
{"appid":"Your appid" ,"appkey":"あなたのappkey","callback":"あなたのウェブサイトのコールバックドメイン","scope":"get_user_info"}

8. コードは次のとおりです


<?php
/**
 * Created by PhpStorm.
 * User: qichao
 * Date: 2018/1/31
 * Time: 下午7:22
 */
namespace wechat\controllers;


use wechat\common\BaseController;

require(__DIR__ . &#39;/../tools/API/qqConnectAPI.php&#39;); //引入QQ互联SDK,这是按照我自己项目的路径引入的。

class QqloginController extends BaseController{
 //登录方法
 public function actionQqlogin(){
  $qc = new \QC();
  $qc->qq_login();
 }
 //这个方法是当你通过QQ登录成功以后想要跳转回来的地址,比如你想登录成功以后跳转到百度,那你把下文的$url改为百度链接即可!
 public function actionCallback(){
  header("Content-type: text/html; charset=utf-8");
    /*       这里请根据你的项目开发需求(比如获取登录用户的昵称、头像、年龄等等),进行相关代码的开发,具体数据获取方法,请查阅QQ互联文档
  $qc = new \QC();
  $access_token = $qc->qq_callback();

  $openid = $qc->get_openid();
  */
  $url = "http://wechat.xxx.cn/index.php?r=cms/home";
  header("Location:".$url);
  exit();
 }
}

これまでのプロセス全体もう終わりです、簡単です! ! !機能プロセス全体は以下の図に似ています:

開発プロセス中に次の問題が発生した場合:

file_get_contents(): ラッパー「https」が見つかりません - 有効にするのを忘れましたか? PHP を設定したとき?

このエラーの理由は非常に簡単です。PHP 設定の暗号化モジュールが有効になっていません。解決策: 1. (Windows) php.ini 設定ファイルで、青で示されている場所を見つけます。下の画像に拡張子 = を付けて、php_openssl.dll の前のセミコロンを削除します

削除後に Apache または nginx サーバーを再起動し、再度アクセスすると、このエラーは発生しません。

2. Linux 上の PHP の場合は、openssl モジュールをインストールする必要があります。インストール後にアクセスできるようになります。


関連する推奨事項:

phpをQQに接続してOAuth2.0にログインするプロセスで遭遇する落とし穴を共有する

PHPサードパーティログインQQログインビデオチュートリアル

Moodleのqqログインの使用法セクション

以上がPHP は QQ ログイン原則とプロセス共有を実装しますの詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。

声明:
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。