使用官方的登陸方法:
網(wǎng)頁(yè)顯示登陸狀態(tài)方法
=============================
網(wǎng)頁(yè)首先需要調(diào)用默認(rèn)的<script language="javascript" src="/include/dedeajax2.js><script>
然后網(wǎng)頁(yè)里head部分加入
<script language="javascript" type="text/javascript"> function CheckLogin(){ var taget_obj = document.getElementById('_loginform'); myajax = new DedeAjax(taget_obj,false,false,"","",""); myajax.SendGet("/member/loginsta.php"); } </script>可將此JS寫入你的JS文件中
其中
_loginform是網(wǎng)頁(yè)中顯示登陸信息的表格的id
/member/loginsta.php是登陸信息的頁(yè)面 你可以修改這個(gè)頁(yè)面,只調(diào)用你想要的信息.
在網(wǎng)頁(yè)中加入以上JS以后
只需要再在網(wǎng)頁(yè)中加入
<span id="_loginform"><div class="rlist"><form name='form1' method='POST' action='{dede:field name='memberurl'/}/index_do.php'><input type="hidden" name="fmdo" value="login"><input type="hidden" name="dopost" value="login"><input type="hidden" name="gourl" value=""><div class="title">會(huì)員登陸</div><div class="rbox userlogin"><dl><dt>用戶名:</dt><dd><input name="userid" class="username" type="text" maxlength="20" /></dd></dl><dl><dt>密碼:</dt><dd><input name="pwd" class="password" type="password" maxlength="20" /></dd></dl><dl><dt>驗(yàn)證碼:</dt><dd><input name="vdcode" class="gdcode" type="text" size="4" maxlength="4" /><img src="{dede:global name='cfg_cmspath'/}/include/validateimg.php" alt="gdcode" /></dd></dl><div class="ulsubmit"><input type="submit" value="登陸" class="submit" /><a href="{dede:field name='memberurl'/}/index_do.php?fmdo=user&dopost=regnew">注冊(cè)帳號(hào)</a></div></div></form></div></span><script language="JavaScript">CheckLogin();</script>出現(xiàn)以下問題:
1、根本不顯示登陸框,且版面錯(cuò)位;
2、注冊(cè)一個(gè)會(huì)員后,登錄,提示登錄成功,5秒后跳轉(zhuǎn)到會(huì)員中心,還是沒登陸的樣子,直接進(jìn)入會(huì)員中心,顯示已經(jīng)登錄上了,看來(lái)是程序的問題?
經(jīng)過修改后仍無(wú)法解決,于是采用以下方法:
1.在模板頁(yè)</head>上加入以下代碼:
<link href="/style/window.css" rel="stylesheet" type="text/css" /><script src="/style/js/jquery.js" type="text/javascript"></script>
2.在頁(yè)面中需要AJAX登錄的地方加入如下代碼:
<font id="sp_login"></font><div class="window" style="width: 300px; top: 200px; position: absolute; display: none; z-index: 10000;" id="div_site_login"> <a class="close" href="javascript:close_site_login();"><img src="/style/images/icon_close.gif"></a> <h6>用戶登陸</h6> <div class="wdmain"> <div class="tipsbox" style="display: none;"></div> <p class="loginp">用戶名:<input class="winpA" type="text"> </p> <p class="loginp">密 碼:<input class="winpA" type="password"> </p> <p class="loginbtn"><a href="javascript:go_reg()"><img src="/style/images/btn_reg_s.gif" width="85" border="0" height="28"></a> <a href="javascript:login_site()"><img src="/style/images/btn_login_s.gif" width="85" border="0" height="28"></a></p> </div></div><script src="/style/js/head.js" type="text/javascript"></script>
在member目錄里建立兩個(gè)文件:
toplogin.php
代碼如下:
<?phprequire_once(dirname(__FILE__)."/config.php");if($s==2) { $S = $cfg_ml->ExitCookie(); }//未登錄顯示的headif(!$cfg_ml->IsLogin()) { echo "<a href='javascript:show_site_login();'>登陸</a><a href='javascript:go_reg();'>注冊(cè)</a>";}//登錄后顯示的headelse {echo "<span class='user'>尊敬的<a href='$myurl' target='_blank'>$cfg_ml->M_UserName</a>,歡迎光臨<font color='#FF0000'></font> <a href='$cfg_memberurl'>控制面板</a> | <a href='javascript:ss_login(2);'>退出</a></span>";}?>toplogin_do.php
代碼如下:
<?phprequire_once(dirname(__FILE__)."/config.php");$userid = $_POST['userid'];$userid = iconv('utf-8', 'gb2312', $userid );$pwd = $_POST['pwd'];$pwd = iconv('utf-8', 'gb2312', $pwd );/*********************function login()*******************/$rs = $cfg_ml->CheckUser($userid,$pwd); if($rs==0) { echo '2'; } else if($rs==-1) { echo '2'; } else if($rs==-2) { echo ''; } else { echo ''; }?>建立style目錄(圖片和CSS我省略了),下有JS目錄有兩個(gè)文件
head.js
代碼如下:
var s_nv=location.href;var cur_obj;if(s_nv.indexOf('news')!=-1){ $('#div_menu a').eq(1).attr('class','menuAon'); cur_obj=$('#div_menu a').eq(1);}else if(s_nv.indexOf('webgame')!=-1){ $('#div_menu a').eq(2).attr('class','menuAon'); cur_obj=$('#div_menu a').eq(2);}else if(s_nv.indexOf('flash')!=-1){ $('#div_menu a').eq(3).attr('class','menuAon'); cur_obj=$('#div_menu a').eq(3);}else{ $('#div_menu a').eq(0).attr('class','menuAon'); cur_obj=$('#div_menu a').eq(0);}$('#div_menu a').mouseover(function(){ $(this).attr('class','menuAon').siblings().attr('class','menuA');});$('#div_menu').mouseout(function(){ cur_obj.attr('class','menuAon').siblings().attr('class','menuA');});ss_login(1);function ss_login(t){ $.ajax( { type: "POST", url: '/member/toplogin.php', data: 's='+t, success: function(result) { $('#sp_login').html(result); close_site_login(); } });}function show_center(){ if($("#dd_light").length==0) { var html='<div id=dd_light style="display:none;z-index: 9998;filter: alpha(opacity=70);left: 0px;position: absolute;top: 0px;background-color: #ccc;moz-opacity: 0.8;opacity: .80;"></div>'; $(document.body).append(html); $('#dd_light').css('width',document.body.scrollWidth+'px'); $('#dd_light').css('height',document.body.scrollHeight+'px'); } $('#dd_light').show();}function login_site(){ var tip=$('#div_site_login div').eq(1); tip.show(); var username=$('#div_site_login input').eq(0).val(); var pwd=$('#div_site_login input').eq(1).val(); if(username=='') { tip.text('請(qǐng)輸入用戶名!'); return; } if(pwd=='') { tip.text('請(qǐng)輸入密碼!'); return; } tip.show(); tip.text('正在驗(yàn)證登錄信息...'); $.ajax( { type: "POST", url: '/member/toplogin_do.php', data: 'userid='+username+'&pwd='+pwd, success: function(result) { if(result.indexOf('2')!=-1) { tip.text('驗(yàn)證失敗,請(qǐng)重新輸入!'); return; } ss_login(1); } });}function show_site_login(){ show_center(); $('#div_site_login').css("left",(($(document).width())/2-(parseInt($('#div_site_login').width())/2))+"px"); $('#div_site_login').show(); return;}function close_site_login(){ $('#dd_light').hide(); $('#div_site_login').hide(); $('#div_site_login div').eq(1).hide(); $('#div_site_login input').eq(0).val(''); $('#div_site_login input').eq(1).val(''); $('#div_site_login input').eq(2).val(''); return;}$(function(){ $('body').keydown(function(e) { if(e.keyCode==13) { if($('#div_login').css('display')!='none'&&$('#div_login').length!=0) { login(); } else if($('#div_site_login').css('display')!='none') { login_site(); } else if($('#index_search').val()!='站內(nèi)搜索'&&$('#index_search').length!=0) { go_search(); } else if($('#search_news').val()!=''&&$('#search_news').length!=0) { location='/news/search.php?s='+$('#search_news').val(); } else if($('#s_text').val()!=''&&$('#s_text').length!=0) { t_search(); } } });});function go_reg(){ location='/member/index_do.php?fmdo=user&dopost=regnew'<!--+location.href-->; return;}$("#site_gd").jCarouselLite({ vertical:true, auto:3000, speed:1000, visible: 1});另一個(gè)是jquery本身的文件jquery.js
OK,搞定!本文轉(zhuǎn)自網(wǎng)絡(luò),361源碼未經(jīng)測(cè)試,如有錯(cuò)誤,請(qǐng)聯(lián)系小編處理。
以上就是織夢(mèng)會(huì)員登陸后不顯示登陸狀態(tài)的解決方法 AJAX 彈出式登陸框的全部?jī)?nèi)容,希望對(duì)大家的學(xué)習(xí)和解決疑問有所幫助,也希望大家多多支持武林網(wǎng)。
|
新聞熱點(diǎn)
疑難解答
圖片精選