服务器之家:专注于服务器技术及软件下载分享
分类导航

PHP教程|ASP.NET教程|Java教程|ASP教程|编程技术|正则表达式|C/C++|IOS|C#|Swift|Android|VB|R语言|JavaScript|易语言|vb.net|

服务器之家 - 编程语言 - PHP教程 - php下获取Discuz论坛登录用户名、用户组、用户ID等信息的实现代码

php下获取Discuz论坛登录用户名、用户组、用户ID等信息的实现代码

2019-11-13 12:40php教程网 PHP教程

前面有一篇文章讲过自己从cookie和discuz数据库中取用户名、用户组、用户ID等信息,但那个并不一定准确,因为discuz登录时会使用COOKIE中的auth值来动态登录,而cookie信息是滞后的,所以获取到的信息并不完全准确。

这里讲一个简单的方法,直接使用discuz的include/common.inc.php来登录。 

复制代码代码如下:


include_once("../discuz/include/common.inc.php"); 
$CTDF_USERINFO = array(); 
$CTDF_USERINFO["sid"] = $sid; 
$CTDF_USERINFO["uid"] = $discuz_uid; 
$CTDF_USERINFO["user"] = $discuz_user; 
if ($discuz_uid == 0) 

$CTDF_USERINFO["user"] = "guest_" . $sid; 

$CTDF_USERINFO["groupid"] = $groupid; 
/** 
* clear discuz variables 
*/ 
$reserved_arr = array("GLOBALS", "_POST", "_GET", "_COOKIE", "_FILES", "_SERVER", "_ENV", "_REQUEST", "CTDF_USERINFO", "reserved_arr"); 
foreach ($GLOBALS as $key => $value) 

if (!in_array($key, $reserved_arr)) 

unset($GLOBALS[$key]); 


unset($reserved_arr, $value); 


将上面这段代码放在任何程序的开头处,其目的是不影响自定义变量的使用。这样就将登录信息读取到$CTDF_USERINFO数组中了。 

还是这个比较简单哦,找了很久,这次就爽了

延伸 · 阅读

精彩推荐