Discuz! X3.1 判断会员登录状态及外部调用注册登录框的实现代码

时间:2022-06-01 16:40:40

在帝国的html里加入html代码

 

复制代码

代码如下:


<div class="login"> 
<form id="login-form" action="/login.shtml" method="post"> <div class="row username"> 
<label for="LoginForm_username" class="required">用户名 <span class="required">*</span></label> <input size="30" class="px" autocomplete="off" tabindex="1" name="LoginForm[username]" id="LoginForm_username" type="text" /> <a target='_blank'>QQ登录</a><div class="clear"> </div> 
</div> 

</form> 
</div> 
<div class="info" style="display:none"> 

<div class="info_img"></div> 
<div class="info_info"> 
<div class="info_info_name">dfsafd23eedsafd@qq.com</div> 
<div class="info_info_links"> 
<a target="_blank" href="<?=$public_r[add_www_92game_net_bbsurl]?>/home.php?mod=spacecp&ac=credit">我的积分</a>|<a href="/boom.shtml" target="_blank" >我的礼包</a>

<a target="_blank" href="<?=$public_r[add_www_92game_net_bbsurl]?>/home.php?mod=space&do=notice&view=system">提醒</a>|<a href="/logout.shtml">退出</a> 
</div> 
</div> 
<div class="clear"> </div> 
<div class="info_txt"> 

</div> 
</div>

 

在discuz下写个zxf_userinfo.php放在discuz根目录就可以了

 

复制代码

代码如下:


<?php 
require './source/class/class_core.php'; 
$discuz = & discuz_core::instance(); 
$discuz->init_cron = false; 
$discuz->init_session = false; 
$discuz->init(); 
//echo $_G['uid']; 
echo $_G['uid'].'|'.$_G['username'].'|0'; 
?>

 

在页面下方利用ajax获取该页面的值,不多说了,直接看代码吧

 

复制代码

代码如下:


<script> 
$(document).ready(function(){ 
var bbsurl='http://bbs.zzvips.com/'; 
var url=bbsurl+'/zxf_userinfo.php'; 
var uid,uname,uscore; 
$.ajax({type: "GET",url: url,data: "?"+Math.random(),dataType: "text",success: function(a){ 
for (var c = a.split("|"), d = 0; d < c.length;){uid = c[d++],uname= c[d++],uscore= c[d++];} 
if(uid){ 
$('.login').remove(); 
$('.info').show(); 
$('.info_info_name').html(uname); 
$('.info_img').html('<a href="#"><img src='+bbsurl+'/uc_server/avatar.php?uid='+uid+'&size=small /></a>'); 

else{ 
$('.info').remove(); 
$('.login').show(); 

}}); 


}); 
</script>