phpcms V9静态判断会员登录状态的方法
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://www.bnwin.com/index.php?m=member&c=checklogin&a=init&jsoncallback=?", function(data){
if(data=='1'){
//会员是登录了的,可以进行一系列操作如
$('#showdiv').show(); //显示div
window.open('http://www.bnwin.com','_self');//打开新页面
}else{
alert('需要登录后查看!');
}
});
这样即解决了任意模块调用判断会员登录状态,并且二级域名中使用也没有关系,也就是解决了跨域问题!
演示效果 http://www.bnwin.com的图片频道的查看原图,没有登录会提示登录后查看,登录后就不会提示!以及黄页频道会员状态的判断
phpcms V9静态判断会员登录状态的方法的更多相关文章
- Discuz! X2.5判断会员登录状态及外部调用注册登录框
Discuz! X2.5判断会员登录状态及外部调用注册登录框 有关discuz论坛会员信息,收集的一些资料: 用dedecms+discuz做了个门户加论坛形式的网站,但是dedecms顶部目前只能q ...
- PHPCMS v9点击量增加值加大的方法
PHPCMS v9点击量增加值加大的方法 在根目录/api 50行 $views = $r['views'] + 1; 修改数字1即可修改每次刷新页面点击量增加的数值.
- PHPCMS V9静态化HTML生成设置及URL规则优化
先讲讲Phpcms V9在后台怎么设置生成静态化HTML,之后再讲解怎么自定义URL规则,进行URL地址优化.在这一篇中,伪静态就不涉及了,大家可以移步到Phpcms V9全站伪静态设置方法. 一.静 ...
- Tornado 判断用户登录状态和操作权限(装饰器)
判断是否登录: def authenticated(method): '''''' @functools.wraps(method) def wrapper(self, *args, **kwargs ...
- vue 根据接口返回的状态码判断用户登录状态并跳转登录页,登录后回到上一个页面(http拦截器)
背景:后台接口返回code==501表示用户是未登录状态,需要登录才可访问: 通过http拦截做路由跳转 第一步:src目录下新建http.js文件,内容如下: import Axios from ' ...
- phpcms v9图片生成缩略图变成黑色解决方法
今天客户反映,上传的图片生成缩略图有的图片变成黑色,出现问题就百度了一下,有不少网友也遇到这样的问题,但是官方论坛也没有给出解决办法,那还得靠自己解决了,于是就研究phpcms v9 图片压缩代码.打 ...
- Phpcms v9系统类库与函数库调用方法
在分享了n多phpcms的教程后,cmsyou继续分享关于phpcms v9系统类库与函数库的调用方法. 系统类库位于系统的 /libs/functions目录下面,函数库文件名为*.func.php ...
- phpcms v9文章页调用点击量方法
1.在页面加载" 2.调用统计点击的标签:: 3.最后,在写上这一句:" phpcms v9增加文章随机点击数的方法 找到文件count.php(网站根目录/api) 查找第50行 ...
- SQLServer无法删除登录名'***',因为该用户当前正处于登录状态解决方法
问题描述: sqlserver在删除登录名的时候提示删除失败 标题: Microsoft SQL Server Management Studio -------------------------- ...
随机推荐
- iOS 10 的适配问题
随着iOS10发布的临近,大家的App都需要适配iOS10,下面是我总结的一些关于iOS10适配方面的问题,如果有错误,欢迎指出. 1.系统判断方法失效: 在你的项目中,当需要判断系统版本的话,不要使 ...
- jquery-ui autocomplete 自动完成功能
效果图
- SQL Server 日期 时间类型
--1毫秒=0.001秒 --1微秒=0.000 001秒 --1纳秒=0.000 000 001秒 --datetime精度不大好,末尾值只能是这3种: .000, .003, or .007 -- ...
- maya 2015配置openCollada插件
1.下载对应的openCollada插件内容 https://github.com/KhronosGroup/OpenCOLLADA/wiki/OpenCOLLADA-Tools 该页面目前提供Mac ...
- [改善Java代码]覆写变长方法也循规蹈矩
建议6:覆写变长方法也循规蹈矩 在Java中,子类覆写父类中的方法很常见,这样做既可以修正Bug也可以提供扩展的业务功能支持,同时还符合开闭原则(Open-Closed Principle),我们来看 ...
- php 学习笔记
//本文转自:http://www.cnblogs.com/ronghua/p/6002995.html //语法错误(syntax error)在语法分析阶段,源代码并未被执行,故不会有任何输出. ...
- VS的启动方式
启动VS的两种方式1.双击图标2.调出cmd,输入 devenv
- DataTables手动带参数提交至服务器
一:参数传递及接收 JavaScript: 黄背景部分为参数传递关键 <script type="text/javascript"> var table; var de ...
- CSS组件化思考
为什么组件化? 分层设计,代码复用,减少冗余: 维护方便,弹性好: 如何组件化? 目前代码分成三级: 第一级粒度最细,是基础,主要包含字体配置,颜色配置,UI框架(比如MUI或者pure.css): ...
- 7月15日学习之BOM
setTimeout() //延时器,只执行一次代码 clearTimeout() //清除演示器 setIntervla() //定时器,根据指定时间间隔执行一次代码 clearInterval() ...