15621857753

phpcmsV9如何实现静态页面判断登录的方法

来源:齐鲁建站 栏目:PHPCMS 阅读: 日期:2021-03-26

本文介绍了phpcmsV9如何实现静态页面判断登录的方法,教程给出的方法要修改三个地方,但是代码特别特别长,使用的时候要注意一下,小心再小心,不要加错地方哦,祝大家好运。

下面齐鲁建站就和大家分享下phpcmsV9如何实现静态页面判断登录的方法。

实现教程:

phpcms v9如何在任意地方判断会员的登录状态呢?在php中是比较好判断的,代码如下

<?php

if (!$_userid){

echo"会员没有登录";

}else

{

echo"会员登录了";

}

?>

但这代码也有局限性,在phpcms V9的黄页模块中无效!

在phpcms v9中我们如何做到在任意模块判断会员登录状态,并且可以静态判断会员登录状态呢?即可以用javascript判断会员的登录状态!

由于用javascript判断会员状态,就必须采用ajax,ajax就存在跨域问题,跟着以下方法做,就可以解决任意模块javascript判断会员登录状态,并且解决了跨域问题。

第一步,在phpcms\modules\member中建一个文件checklogin.php

内容如下

<?php

/**

* ================================

* 检测会员登录状态

*/

defined('IN_PHPCMS') or exit('No permission resources.');

class checklogin {

public function init(){

$callback = $_GET['jsoncallback'];//这东西是为了解决跨域问题的

$_groupid = param::get_cookie('_groupid');

$_groupid = intval($_groupid);

if(!$_groupid) {

echo $callback.'(0)';

}else{

echo $callback.'(1)';

}

}

}

?>

第二步,在需要判断会员登录状态的页面添加如下javascript代码,当然前提上必须是引用了jquery的

//判断登录状态

$.getJSON("http://域名/index.php?m=member&c=checklogin&a=init&jsoncallback=?", function(data){

if(data=='1'){

//会员是登录了的,可以进行一系列操作如

$('#showdiv').show(); //显示div

window.open('http://域名,'_self');//打开新页面

}else{

alert('需要登录后查看!');

}

});

这样即解决了任意模块调用判断会员登录状态,并且二级域名中使用也没有关系,也就是解决了跨域问题!