15621857753

phpcmsV9如何实现AJAX登录账号

来源:齐鲁建站 栏目:建站教程 阅读: 日期:2021-03-29

本文介绍了phpcmsV9如何实现AJAX登录账号,要改的地方非常多,使用的时候务必要小心谨慎。要修改header.html、mini.html、login.html、index.php、ajaxlogin.html等数个文件,不过教程说的也很详细,跟着一条一条修改就好了。

响应式网站建设

phpcmsV9如何实现AJAX登录账号?下面跟着齐鲁建站小编一起看看解决方法。

1. 修改文件:

\phpcms\templates\default\content\header.html

在上面添加2行代码:

<link href="{CSS_PATH}dialog.css" rel="stylesheet" type="text/css" />

<script language="javascript" type="text/javascript" src="{JS_PATH}dialog.js"></script>

2. 修改文件:

\phpcms\templates\default\member\mini.html

(1)在上面添加代码:

<script type="text/javascript">
 function ajax_login() {
 window.top.art.dialog({id:'login'}).close();
 window.top.art.dialog({title:'会员登录:',id:'login',iframe:'{APP_PATH}index.php?m=member&c=index&a=login&siteid={$siteid}&dialog=login',width:'400',height:'300'});
 }
</script>

<script type="text/javascript">
 function ajax_logout() {
 window.top.art.dialog({id:logout}).close();
 window.top.art.dialog({title:'会员登录:',id:'login',iframe:'{APP_PATH}index.php?m=member&c=index&a=logout&siteid={$siteid}&dialog=logout,width:'400',height:'300'});
 }
</script>

(2)查找 target=”_top”>{L(‘login’)}    修改为

target="_top" onclick="ajax_login();return false;">{L('login')}

(3)查找 target=”_top”>{L(‘logout’)}    修改为

target="_top" onclick="ajax_logout();return false;">{L('login')}

3. 修改文件:

\phpcms\templates\default\member\login.html,

<input type="hidden" name="forward" id="forward" value="{$forward}">

下面添加:

<input type="hidden" name="dialog" id="dialog" value="{trim($_GET['dialog'])}">

4. 修改文件:

\phpcms\modules\member\index.php:

(1) 找到(大概在第700行代码的login函数中)

showmessage(L('login_success').$synloginstr, $forward);

修改为:

$dialog = trim($_POST['dialog']);

 if ($dialog){

 showmessage(L('login_success').$synloginstr.'<script type="text/javascript">parent.miniLoginFrame.window.location.reload();setTimeout(window.top.art.dialog({id:\''.$dialog.'\'}).close(),2000);</script>', 'blank');

 }else{

 showmessage(L('login_success').$synloginstr, $forward);

 }

(2) 找到(大概在第749行代码的logout函数中)

showmessage(L('logout_success').$synloginstr, $forward);

修改为:

$dialog = trim($_GET['dialog']);

 if ($dialog){

 showmessage(L('logout_success').$synloginstr.'1<script type="text/javascript">parent.miniLoginFrame.window.location.reload();setTimeout(window.top.art.dialog({id:\''.$dialog.'\'}).close(),2000);</script>', 'blank');

 }else{

 showmessage(L('logout_success').$synloginstr, $forward);

 }

5. 修改文件:

\phpcms\templates\default\member\login.html, 调整内容及相关CSS,使之适应Ajax登录使用的Dialog大小。

修改完毕。

PS:

其实不必改动login.html这个文件,可以重新定义一个登录页面来让ajax单独使用

大致方法如下:

打开phpcms\modules\member\index.php

找到public function login()整段代码复制,改成public function ajaxlogin()

并且把里面的include template(‘member’, ‘login‘);改成include template(‘member’, ‘ajaxlogin‘);然后保存;

第二步到phpcms\templates\default\member模板目录,复制一个login.html改名为ajaxlogin.html

然后回到上面的修改第二步,把里面的login全都改成ajaxlogin,这样一来就可以按照第五步来调整相关CSS及页面来适应ajax登录页面大小了

以上就是关于phpcmsAJAX登录的所有内容,希望可以帮到大家,欢迎扫码加微信一起交流~

公众号二维码

展开