佳木斯湛栽影视文化发展公司

主頁 > 知識庫 > PHP實現(xiàn)QQ登錄的開原理和實現(xiàn)過程

PHP實現(xiàn)QQ登錄的開原理和實現(xiàn)過程

熱門標簽:銀行業(yè)務 電子圍欄 科大訊飛語音識別系統(tǒng) 服務器配置 團購網(wǎng)站 Mysql連接數(shù)設置 Linux服務器 阿里云

第三方登錄,就是使用大家比較熟悉的比如QQ、微信、微博等第三方軟件登錄自己的網(wǎng)站,這可以免去注冊賬號、快速留住用戶的目的,免去了相對復雜的注冊流程。下邊就給大家講一下怎么使用PHP開發(fā)QQ登錄的功能。

1、進入QQ互聯(lián)官網(wǎng)進行登錄(可以使用自己的QQ或者重新注冊一個QQ號作為咱們項目的單獨QQ進行管理),地址:https://connect.qq.com/

2、點擊“應用管理”進入QQ互聯(lián)管理中心,在這里進行相關(guān)應用的創(chuàng)建,分為 網(wǎng)站應用 和 移動應用。選擇自己想要的應用進行資料的填寫(審核需要等待大概7天左右),審核通過你將獲得APP ID

和APP Key,請拿小本本記上!請拿小本本記上!請拿小本本記上!(重要的事情說三遍!!!)

3、審核通過獲得相關(guān)接口:get_user_info。

4、下載QQ互聯(lián)相關(guān)的demo http://wiki.connect.qq.com/sdk%E4%B8%8B%E8%BD%BD 我下載的是 PHP SDK v2.1

5、仔細觀察sdk我們會發(fā)現(xiàn)它包含有4個文件夾、2個文件,其中最主要的是API文件夾,其余的我覺得都可以忽略不看(你看也沒事),按照這篇文檔一步一步往下進行,你就可以實現(xiàn)登錄的功能。

6、將API文件夾拷貝到你的項目里,至于拷貝到項目的哪個文件夾,只要你能引入就行,看你心情來就可以,前期準備做好,接下來就是寫代碼了。

7、打開你拷貝到項目里的API文件夾,其中有一個comm文件夾,再次打開comm你就能看到一個叫 inc.php 的家伙,打開它!將上文記在你小本本上的APPID 和 APPKEY填寫到相關(guān)位置,大概形式是這樣的  

?php die('forbidden'); ?>
{"appid":"你的appid","appkey":"你的appkey","callback":"你的網(wǎng)站回調(diào)域","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__ . '/../tools/API/qqConnectAPI.php'); //引入QQ互聯(lián)SDK,這是按照我自己項目的路徑引入的。

class QqloginController extends BaseController{
 //登錄方法
 public function actionQqlogin(){
  $qc = new \QC();
  $qc->qq_login();
 }
 //這個方法是當你通過QQ登錄成功以后想要跳轉(zhuǎn)回來的地址,比如你想登錄成功以后跳轉(zhuǎn)到百度,那你把下文的$url改為百度鏈接即可!
 public function actionCallback(){
  header("Content-type: text/html; charset=utf-8");
    /*       這里請根據(jù)你的項目開發(fā)需求(比如獲取登錄用戶的昵稱、頭像、年齡等等),進行相關(guān)代碼的開發(fā),具體數(shù)據(jù)獲取方法,請查閱QQ互聯(lián)文檔
  $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();
 }
}

至此呢你的整個流程就走完了,簡單吧?。?!整個功能流程類似下圖:

如果你在開發(fā)過程中遇到如下問題:

file_get_contents(): Unable to find the wrapper quot;httpsquot; - did you forget to enable it when you configured PHP?

出現(xiàn)這個錯誤的原因很簡單,php配置中的加密模塊并沒有打開

解決方案:1.(windows)php.ini配置文件,定位到下圖藍色所示的位置,把extension=php_openssl.dll 前面的; 分號去掉

去掉以后重新啟動Apache或者nginx服務器,再訪問,就不會有這個錯誤了。

2. linux下的PHP,就必須安裝openssl模塊,安裝好了以后就可以訪問了。

您可能感興趣的文章:
  • PHP版QQ互聯(lián)OAuth示例代碼分享
  • QQ登錄 PHP OAuth示例代碼
  • PHP實現(xiàn)QQ快速登錄的方法
  • PHP第三方登錄—QQ登錄實現(xiàn)方法
  • thinkPHP5項目中實現(xiàn)QQ第三方登錄功能
  • PHP實現(xiàn)QQ登錄實例代碼
  • PHP模擬QQ登錄的方法
  • PHP+jquery+CSS制作頭像登錄窗(仿QQ登陸)
  • 淺談PHP接入(第三方登錄)QQ登錄 OAuth2.0 過程中遇到的坑
  • PHP調(diào)用QQ互聯(lián)接口實現(xiàn)QQ登錄網(wǎng)站功能示例

標簽:萍鄉(xiāng) 廣元 衢州 棗莊 大理 江蘇 衡水 蚌埠

巨人網(wǎng)絡通訊聲明:本文標題《PHP實現(xiàn)QQ登錄的開原理和實現(xiàn)過程》,本文關(guān)鍵詞  ;如發(fā)現(xiàn)本文內(nèi)容存在版權(quán)問題,煩請?zhí)峁┫嚓P(guān)信息告之我們,我們將及時溝通與處理。本站內(nèi)容系統(tǒng)采集于網(wǎng)絡,涉及言論、版權(quán)與本站無關(guān)。
  • 相關(guān)文章
  • 收縮
    • 微信客服
    • 微信二維碼
    • 電話咨詢

    • 400-1100-266
    建阳市| 如东县| 抚顺县| 吴江市| 栾城县| 灵石县| 台中市| 乌兰浩特市| 黄浦区| 班玛县| 黑山县| 盘山县| 罗山县| 布拖县| 南江县| 河南省| 沐川县| 光泽县| 上栗县| 陆川县| 金沙县| 周至县| 牙克石市| 通河县| 东源县| 唐海县| 开平市| 凌源市| 伽师县| 大冶市| 三台县| 阿拉尔市| 四子王旗| 达尔| 庆云县| 辽阳市| 东丰县| 毕节市| 武胜县| 白城市| 阜城县|