首页 >

织梦DedeCMS 会员登陆后不显示登陆状态的搞定方式(AJAX 弹出式登陆框)

使用官方的登陆方法:

织梦DedeCMS 会员登陆后不显示登陆状态的搞定方式(AJAX 弹出式登陆框)

网页显示登陆状态方法
=============================
网页首先需要调用默认的
然后网页里head部分加入

function CheckLogin(){
var taget_obj = document.getElementById(‘_loginform’);
myajax = new DedeAjax(taget_obj,false,false,””,””,””);
myajax.SendGet(“/member/loginsta.php”);
}

可将此JS写入你的JS文件中
其中
_loginform是网页中显示登陆信息的表格的id
/member/loginsta.php是登陆信息的页面 你可以修改这个页面,只调用你想要的信息.
在网页中加入以上JS以后
只需要再在网页中加入

  1. 会员登陆

  2. 用户名:
  3. 密码:
  4. 验证码:
  5. 注册帐号
  6. CheckLogin();

出现以下问题:

1 | 根本不显示登陆框,且版面错位;

2 | 注册一个会员后,登录,提示登录成功,5秒后跳转到会员中心,还是没登陆的样子,直接进入会员中心,显示已经登录上了,看来是程序的问题?

经过修改后仍无法解决,于是采用以下方法:

1.在模板页上加入以下代码:

2.在页面中需要AJAX登录的地方加入如下代码:


织梦DedeCMS 会员登陆后不显示登陆状态的搞定方式(AJAX 弹出式登陆框)

用户登陆



用户名:


密码:


织梦DedeCMS 会员登陆后不显示登陆状态的搞定方式(AJAX 弹出式登陆框)织梦DedeCMS 会员登陆后不显示登陆状态的搞定方式(AJAX 弹出式登陆框)




在member目录里建立两个文件:

toplogin.php

代码如下:

<?php
require_once(dirname(__FILE__).”/config.php”);
if($s==2)
{
$S = $cfg_ml->ExitCookie();
}

//未登录显示的head
if(!$cfg_ml->IsLogin()) {
echo “登陆注册“;

}
//登录后显示的head
else {
echo “尊敬的$cfg_ml->M_UserName,欢迎光临 控制面板 | 退出“;
}
?>

toplogin_do.php

代码如下:

<?php
require_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目录有两个文件

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=”;
$(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(‘请输入用户名!’);
return;
}
if(pwd==”)
{
tip.text(‘请输入密码!’);
return;
}
tip.show();
tip.text(‘正在验证登录信息…’);
$.ajax(
{
type: “POST”,
url: ‘/member/toplogin_do.php’,
data: ‘userid=’+username+’&pwd=’+pwd,
success: function(result)
{
if(result.indexOf(‘2’)!=-1)
{
tip.text(‘验证失败,请重新输入!’);
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()!=’站内搜索’&&$(‘#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’;
return;
}

$(“#site_gd”).jCarouselLite(
{
vertical:true,
auto:3000,
speed:1000,
visible: 1
});

另一个是jquery本身的文件jquery.js

OK,搞定!


织梦DedeCMS 会员登陆后不显示登陆状态的搞定方式(AJAX 弹出式登陆框)
  • 织梦DedeCMSlikearticle标签调用和显示附加字段(自定义字段)办法
  • 织梦DedeCMSlikearticle标签调用和显示附加字段(自定义字段)办法 | 织梦DedeCMSlikearticle标签调用和显示附加字段(自定义字段)办法 ...

    织梦DedeCMS 会员登陆后不显示登陆状态的搞定方式(AJAX 弹出式登陆框)
  • 解决织梦DedeCMS列表页分页地址优化
  • 解决织梦DedeCMS列表页分页地址优化 | 解决织梦DedeCMS列表页分页地址优化 ...

    织梦DedeCMS 会员登陆后不显示登陆状态的搞定方式(AJAX 弹出式登陆框)
  • 织梦DedeCMS拓展channel标签实现limit功能
  • 织梦DedeCMS拓展channel标签实现limit功能 | 织梦DedeCMS拓展channel标签实现limit功能 ...