溫馨提示×

您好,登錄后才能下訂單哦!

密碼登錄×
登錄注冊(cè)×
其他方式登錄
點(diǎn)擊 登錄注冊(cè) 即表示同意《億速云用戶服務(wù)條款》

PHP如何實(shí)現(xiàn)QQ登錄

發(fā)布時(shí)間:2021-06-25 15:04:22 來源:億速云 閱讀:158 作者:小新 欄目:開發(fā)技術(shù)

這篇文章主要介紹了PHP如何實(shí)現(xiàn)QQ登錄,具有一定借鑒價(jià)值,感興趣的朋友可以參考下,希望大家閱讀完這篇文章之后大有收獲,下面讓小編帶著大家一起了解一下。

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

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

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

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

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

PHP如何實(shí)現(xiàn)QQ登錄

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

7、打開你拷貝到項(xiàng)目里的API文件夾,其中有一個(gè)comm文件夾,再次打開comm你就能看到一個(gè)叫 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,這是按照我自己項(xiàng)目的路徑引入的。

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

至此呢你的整個(gè)流程就走完了,簡單吧?。。≌麄€(gè)功能流程類似下圖:

PHP如何實(shí)現(xiàn)QQ登錄

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

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

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

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

去掉以后重新啟動(dòng)Apache或者nginx服務(wù)器,再訪問,就不會(huì)有這個(gè)錯(cuò)誤了。

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

感謝你能夠認(rèn)真閱讀完這篇文章,希望小編分享的“PHP如何實(shí)現(xiàn)QQ登錄”這篇文章對(duì)大家有幫助,同時(shí)也希望大家多多支持億速云,關(guān)注億速云行業(yè)資訊頻道,更多相關(guān)知識(shí)等著你來學(xué)習(xí)!

向AI問一下細(xì)節(jié)

免責(zé)聲明:本站發(fā)布的內(nèi)容(圖片、視頻和文字)以原創(chuàng)、轉(zhuǎn)載和分享為主,文章觀點(diǎn)不代表本網(wǎng)站立場,如果涉及侵權(quán)請(qǐng)聯(lián)系站長郵箱:is@yisu.com進(jìn)行舉報(bào),并提供相關(guān)證據(jù),一經(jīng)查實(shí),將立刻刪除涉嫌侵權(quán)內(nèi)容。

php
AI