This article mainly tells you the principle of implementing QQ login in PHP and the related code implementation process. Friends who are interested and need it can refer to it.
Third-party login means using familiar third-party software such as QQ, WeChat, Weibo, etc. to log in to your own website. This eliminates the need to register an account, quickly retain users, and eliminates the need for relative Complex registration process. Next, I will tell you how to use PHP to develop the QQ login function.
1. Enter the QQ Internet official website to log in (you can use your own QQ or re-register a QQ number as a separate QQ for our project for management), address: https://connect.qq.com/
2. Click "Application Management" to enter the QQ Internet Management Center, where you can create related applications, which are divided into website applications and mobile applications. Select the application you want to fill in the information (you need to wait for about 7 days for review). If you pass the review, you will get the APP ID
and APP Key. Please take a small notebook and write it down! Please take a notebook and write it down! Please take a notebook and write it down! (Say important things three times!!!)
3. Obtain the relevant interface after passing the review: get_user_info.
4. Download the demo related to QQ Internet http://wiki.connect.qq.com/sdk download. I downloaded PHP SDK v2.1
5. Observe the sdk carefully and we will I found that it contains 4 folders and 2 files, the most important of which is the API folder. I think the rest can be ignored (it’s okay if you read it). Follow this document step by step, and you will Login function can be realized.
6. Copy the API folder to your project. As for which folder of the project to copy to, as long as you can import it, it depends on your mood. After the preliminary preparations are done, the next step is to write the code.
7. Open the API folder you copied to the project. There is a comm folder in it. Open comm again and you will see a guy named inc.php. Open it! Fill in the APPID and APPKEY recorded above in your notebook into the relevant positions. The approximate form is like this
{"appid":"your appid","appkey":"your appkey","callback":"your website callback domain","scope":"get_user_info"}
8 , the code is as follows
<?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互联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(); } }
Now your entire process is complete, simple! ! ! The entire functional process is similar to the figure below:
If you encounter the following problems during the development process:
file_get_contents(): Unable to find the wrapper "https" - did you forget to enable it when you configured PHP?
The reason for this error is very simple, the encryption module in the PHP configuration is not turned on
Solution : 1. (Windows) php.ini configuration file, locate the location shown in blue in the figure below, remove the semicolon
in front of extension=php_openssl.dll and then restart the Apache or nginx server. If you visit again, there will be no such error.
2. For PHP under Linux, you must install the openssl module. After installation, you can access it.
Detailed explanation of automatic loading php examples of PHP files
Detailed explanation of the php skills of using mb_strpos in PHP
Detailed explanation of the method of using zlib extension to achieve GZIP compression output in PHP
The above is the detailed content of PHP realizes the development principle and implementation process of QQ login php examples. For more information, please follow other related articles on the PHP Chinese website!