Skip to content

基于ThinkPHP3.2.3的微信OAuth2.0网页授权认证模块

Notifications You must be signed in to change notification settings

tiana2015/WeChatOAuth2.0

 
 

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

9 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

WeChatOAuth2.0

基于ThinkPHP3.2.3的微信OAuth2.0网页授权认证模块

Step 1

将全部文件放在网站目录下

Step 2

配置你的公众号信息

  • 进入文件./Application/Common/Conf/config.php
  • 将你的公众号相关信息写入
<?php
//这里填入的你域名
define("_URL_","www.baidu.com");
//这里填入你公众号的APPID
define("_APPID_","你公众号的APPID");
//这里填入你公众号的APPSECRET
define('_APPSECRET_','你公众号的APPSECRET');
return array(
	//'配置项'=>'配置值'
	'DB_TYPE'               =>  'mysql',     // 数据库类型
    'DB_HOST'               =>  '127.0.0.1', // 服务器地址
    'DB_NAME'               =>  '',          // 数据库名
    'DB_USER'               =>  '',      // 用户名
    'DB_PWD'                =>  '',          // 密码
    'DB_PORT'               =>  '3306',        // 端口
	'DB_PARAMS' => array(\PDO::ATTR_CASE => \PDO::CASE_NATURAL) ,
	'MODULE_ALLOW_LIST'    =>    array('Home','Admin'),//模块
	'DEFAULT_MODULE'       =>    'Home',
	'URL_ROUTER_ON'   => true, 
	'URL_ROUTE_RULES'=>array(
	    'index$' => 'Home/Index/index', //定义路由
	)
);

Step 3

新建的控制器继承OAuth2Controller类即可实现微信网页授权认证功能
OAuth2Controller类的相关代码

<?php
namespace Home\Controller;
use Think\Controller;
class OAuth2Controller extends Controller {
    public function _initialize(){
    	//判断是否验证过
		if((session("?userOpenid")&&session("?userSex"))||(session("?userOpenid")&&session("?userNickname"))){
			//已验证过
			//如果你不需要用户绑定的话,可以跳过下面这步
			if(!session("?userID")){
				$this->redirect('这里填入要跳转的绑定页面','',2,"<h1>请先绑定账号再使用,将自动跳转到绑定页面</h1>");
			}
		}else{
		//进入验证
		//方法放在./Application/Home/Common/function.php下
			Check();
		}
	}
}

Demo

<?php 
namespace Home\Controller;
class DemoController extends OAuth2Controller {
    public function index(){
        $this->show("这个是测试案例");
    }
}

P.S.

相关认证代码放在目录./Application/Home/Common/function.php下(不是用TP写的小伙伴可以在这里参考下认证代码)
注意要创建相应的数据库和表。具体更改在function目录下更改getUserInfo()方法就好

About

基于ThinkPHP3.2.3的微信OAuth2.0网页授权认证模块

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

Languages

  • PHP 99.4%
  • Other 0.6%