激情久久久_欧美视频区_成人av免费_不卡视频一二三区_欧美精品在欧美一区二区少妇_欧美一区二区三区的

服務器之家:專注于服務器技術及軟件下載分享
分類導航

DEDECMS|帝國CMS|Discuz|PHPCMS|Wordpress|ZBLOG|ECSHOP|蘋果CMS|極致CMS|CMS系統|

服務器之家 - 建站程序 - PHPCMS - phpcms V9實現QQ登陸OAuth2.0提供下載

phpcms V9實現QQ登陸OAuth2.0提供下載

2019-10-11 13:15phpcms教程網 PHPCMS

phpcmsV9使用的QQ登陸依然是OAuth1.0,但現在騰訊已經不審核使用OAuth1.0的網站了。這對于使用pc的站長來講是一個無比巨大的坑。經過對phpcms論壇的一位同學做的插件進行修改,現在完美實現QQ登陸,暫無發現bug

實現步驟:

①打開\phpcms\modules\member\index.php文件,把下面的代碼找個地方塞進去(可以直接在pc默認的QQ登陸下面)。

 

復制代碼

代碼如下:


//QQ登陸oAuth2.0 
ublic function public_qq_login2(){ 
$appid = pc_base::load_config('system', 'qq_appid'); 
$appkey = pc_base::load_config('system', 'qq_appkey'); 
$callback = pc_base::load_config('system', 'qq_callback'); 
pc_base::load_app_class('qqOAuth2','',0); 
$info = new qqOAuth2($appid,$appkey,$callback); 
$this->_session_start(); 
if (!isset($_GET['code'])){ 
$info->redirect_to_login(); 
}else{ 
$code = $_GET['code']; 
$_SESSION['openid'] = $info->get_openid($code);//調取QQ openid值 
if(!emptyempty($_SESSION['openid'])){ 
$r = $this->db->get_one(array('connectid'=>$_SESSION['openid'],'from'=>'qq')); 
if(!emptyempty($r)){ 
//QQ已存在于數據庫,則直接轉向登陸操作 
$password = $r['password']; 
$this->_init_phpsso(); 
$synloginstr = $this->client->ps_member_synlogin($r['phpssouid']); 
$userid = $r['userid']; 
$groupid = $r['groupid']; 
$username = $r['username']; 
$nickname = emptyempty($r['nickname']) ? $username : $r['nickname']; 
$this->db->update(array('lastip'=>ip(), 'lastdate'=>SYS_TIME, 'nickname'=>$me['name']), array('userid'=>$userid)); 
if(!$cookietime) $get_cookietime = param::get_cookie('cookietime'); 
$_cookietime = $cookietime ? intval($cookietime) : ($get_cookietime ? $get_cookietime : 0); 
$cookietime = $_cookietime ? TIME + $_cookietime : 0; 
$phpcms_auth_key = md5(pc_base::load_config('system', 'auth_key').$this->http_user_agent); 
$phpcms_auth = sys_auth($userid."\t".$password, 'ENCODE', $phpcms_auth_key); 
param::set_cookie('auth', $phpcms_auth, $cookietime); 
param::set_cookie('_userid', $userid, $cookietime); 
param::set_cookie('_username', $username, $cookietime); 
param::set_cookie('_groupid', $groupid, $cookietime); 
param::set_cookie('cookietime', $_cookietime, $cookietime); 
param::set_cookie('_nickname', $nickname, $cookietime); 
$forward = isset($_GET['forward']) && !emptyempty($_GET['forward']) ? $_GET['forward'] : 'index.php?m=member&c=index'; 
showmessage(L('login_success').$synloginstr, $forward); 
}else{ 
//未存在于數據庫中,跳去完善資料頁面。頁面預置用戶名(QQ返回是UTF8編碼,如有需要進行轉碼) 
$user = $info->get_user_info(); 
$_SESSION['connectid'] = $_SESSION['openid']; 
$_SESSION['from'] = 'qq'; 
if(CHARSET != 'utf-8') {//轉編碼 
$connect_username = iconv('utf-8', CHARSET, $user['nickname']); 

include template('member', 'connect'); 



 

②把附件的qqOAuth2.class.php文件放在 \phpcms\modules\member\classes\ 文件夾里。
③在后臺找到connect設置,把QQ號碼登陸的回調地址改成http://www.zmynmublwnt.cn/index.php?m=member&c=index&a=public_qq_login2 (把我的域名換成你自己的)
④填好App ID和App key,然后更新緩存。
⑤登陸phpmyadmin,找到v9_member這張表的connectid字段(或者自定義的字段),把類型改成“char(255)”,因為phpcms默認是15位的。所以我們直接徹底修改成255位,這個不管是騰訊的其它第三方網站帳號(例如淘寶、支付寶、百度、360等其它第三方帳號),都可以完成數據綁定。(此條添加于7月27號,由網友liuyang814發郵件提醒)
后期會把新浪微博及騰訊微博的代碼放上來。phpcms的周邊代碼太少了,網上找都找不到。

服務器之家特提供下載 qqOAuth2.rar

延伸 · 閱讀

精彩推薦
  • PHPCMSphpcms怎么上傳歌曲文件

    phpcms怎么上傳歌曲文件

    phpcms上傳歌曲文件的方法:首先依次打開“設置-站點管理-修改”;然后在附件配置的“允許上傳附件類型”中添加自己需要的類型;接著打開“添加模型...

    未知1522023-05-07
  • PHPCMSphpcms v9去除盛大連接 關閉盛大通行證的修改方法

    phpcms v9去除盛大連接 關閉盛大通行證的修改方法

    phpcms v9默認開啟了盛大連接,直接使用盛大通告證登錄網站,但是盛大通告證的覆蓋面有限,比不上QQ或者支付寶,甚至不如人人網、豆瓣之類,于是有朋...

    phpcms教程網5562019-10-13
  • PHPCMSphpcms的欄目緩存無限級羅列展示處理代碼(親測)

    phpcms的欄目緩存無限級羅列展示處理代碼(親測)

    本文為大家詳細介紹下phpcms的欄目緩存無限級羅列展示是怎么實現的,粗測試了一下,效果還不錯,有需求的朋友可以參考下哈,希望對大家有所幫助 ...

    phpcms教程網8642019-10-11
  • PHPCMS數據庫導入成功,phpcms打不開

    數據庫導入成功,phpcms打不開

    問:,數據庫導入成功,phpcms打不開 答:您好,查看此域名是解析到 云主機 上的,報錯來看應該是您導入的數據庫不完整,還差session的表,請您核實 若需...

    未知1822023-05-07
  • PHPCMSphpcms V9實現QQ登陸OAuth2.0提供下載

    phpcms V9實現QQ登陸OAuth2.0提供下載

    phpcmsV9使用的QQ登陸依然是OAuth1.0,但現在騰訊已經不審核使用OAuth1.0的網站了。這對于使用pc的站長來講是一個無比巨大的坑。經過對phpcms論壇的一位同學做...

    phpcms教程網3402019-10-11
  • PHPCMSphpcms常見問題解答

    phpcms常見問題解答

    1.為什么phpcms首頁幻燈片怎么顯示不出來? 答:需要設置文章的 標題圖片 如果設置標題圖片,則可以在首頁以及欄目頁以圖片方式鏈接到文章。 2.自定義...

    phpcms教程網2712019-10-07
  • PHPCMS如何設置PhpCms廣告模塊管理 PhpCms廣告模塊管理圖文教程

    如何設置PhpCms廣告模塊管理 PhpCms廣告模塊管理圖文教程

    PhpCms廣告模塊管理圖文教程,下面給大家總結一下 ...

    PHPCMS教程網3782019-10-14
  • PHPCMSphpcms轉移到虛擬空間的詳細步驟

    phpcms轉移到虛擬空間的詳細步驟

    本文向大家介紹phpcms從本地轉移到虛擬空間的步驟,轉移過程需要改動一部分文件,這里提供如何改動這些文件,以保證你可以順利轉移PHPCMS ...

    phpcms教程網4232019-10-13
主站蜘蛛池模板: 有色视频在线观看 | 日本网站在线播放 | 国产亚洲精品精 | 黄色久| 欧美一级在线免费 | 99激情视频| v片在线看 | 免费观看黄色影片 | 黄色aaa视频 | 欧美成人做爰高潮片免费视频 | 99精品视频久久精品视频 | 全免费午夜一级毛片真人 | 黄色毛片观看 | 蜜桃网在线 | 97干色| 毛片大全免费看 | 中国av免费观看 | 国产精品.com| 国产成年人网站 | 中文字幕一区二区三区久久 | 暴力强行进如hdxxx | 色播视频网站 | 综合网天天色 | 欧美一区黄 | 亚洲欧洲日韩av | 国产91免费看 | 免费毛片观看 | 极品美女一级毛片 | 有色视频在线观看 | 久久艹逼 | 99在线精品视频免费观看20 | 一级黄片毛片免费看 | 国产日韩三区 | 中文字幕精品一区久久久久 | 成人免费久久 | 欧美精品久久天天躁 | 国产乱xxxx| 鲁丝片一区二区三区免费入口 | 午夜精品老牛av一区二区三区 | 香蕉成人在线观看 | 2021av视频|