帝国CMS判断会员是否登录及登录后才能看到内容的方法
时间:2023年10月14日
/来源:网络
/编辑:佚名
需求:发布的信息内容和相关内容游客可以查看,想隐藏信息发布人的名字和联系方式,需要登陆才能查看
效果是:会员登录后才能看到手机号码,未登录时显示“登录后可见”
思路:
做个php文件用于显示隐藏的内容。在这个php文件里验证权限并显示
内容模板用:<script src="show.php"></script>来显示隐藏的内容
步骤:
1、新建show.php文件,放到e目录里下面;
2、show.php内容以下:
代码如下:
自己解决了多字段调用:
如果是多字段放在一起,用这个代码:
<?php
require("class/connect.php");
include("class/db_sql.php");
include("class/config.php");
include("class/class.php");
$link=db_connect();
$empire=new mysqlquery();
$classid=intval($_GET['classid']);
$id=intval($_GET['id']);
$muserid=(int)getcvar('mluserid');//用户id
$musername=RepPostVar(getcvar('mlusername'));//用户名
$mgroupid=(int)getcvar('mlgroupid');//会员组id
if($classid&&$id&&$class_r[$classid][tbname]&&$muserid)
{
$r=$empire->fetch1("select id, mycontact, address, companyname from {$dbtbpre}ecms_".$class_r[$classid][tbname]." where id='$id' and classid='$classid' limit 1");
if($r[id])
{
?>
document.write('<?=$r[mycontact]?>', '<?=$r[address]?>', '<?=$r[companyname]?>');
<?php
}
}
else
{
?>
document.write('登录后才能查看');
<?php
}
db_close();
$empire=null;
?>
如果多字段不在同一个位置,用这个:
复制几个show.php文件,改名,在模板页用——
比如:<script src="[!--news.url--]e/show_email.php?classid=[!--classid--]&id=[!--id--]"></script>这样
<script src="[!--news.url--]e/show_myarea.php?classid=[!--classid--]&id=[!--id--]"></script>
不过单一字段代码相应地要替换掉字段:
改
select id,title和<?=$r[title]?>'中的title
完整的单一字段title代码例子:
把show.php放到e目录里,内容为如下:
<?php
require("class/connect.php");
include("class/db_sql.php");
include("class/config.php");
include("class/class.php");
$link=db_connect();
$empire=new mysqlquery();
$classid=intval($_GET['classid']);
$id=intval($_GET['id']);
$muserid=(int)getcvar('mluserid');//用户id
$musername=RepPostVar(getcvar('mlusername'));//用户名
$mgroupid=(int)getcvar('mlgroupid');//会员组id
if($classid&&$id&&$class_r[$classid][tbname]&&$muserid)
{
$r=$empire->fetch1("select id,title from {$dbtbpre}ecms_".$class_r[$classid][tbname]." where id='$id' and classid='$classid' limit 1");
if($r[id])
{
?>
document.write('标题:<?=$r[title]?>');
<?php
}
}
else
{
?>
document.write('登录后才能查看');
<?php
}
db_close();
$empire=null;
?>
内容模板显示调用
<script src="[!--news.url--]e/show.php?classid=[!--classid--]&id=[!--id--]"></script>
上面的sql语句只是查询title,其他字段自行修改
文章来自:http://bbs.phome.net/showthread-13-89138-0.html
效果是:会员登录后才能看到手机号码,未登录时显示“登录后可见”
思路:
做个php文件用于显示隐藏的内容。在这个php文件里验证权限并显示
内容模板用:<script src="show.php"></script>来显示隐藏的内容
步骤:
1、新建show.php文件,放到e目录里下面;
2、show.php内容以下:
代码如下:
自己解决了多字段调用:
如果是多字段放在一起,用这个代码:
<?php
require("class/connect.php");
include("class/db_sql.php");
include("class/config.php");
include("class/class.php");
$link=db_connect();
$empire=new mysqlquery();
$classid=intval($_GET['classid']);
$id=intval($_GET['id']);
$muserid=(int)getcvar('mluserid');//用户id
$musername=RepPostVar(getcvar('mlusername'));//用户名
$mgroupid=(int)getcvar('mlgroupid');//会员组id
if($classid&&$id&&$class_r[$classid][tbname]&&$muserid)
{
$r=$empire->fetch1("select id, mycontact, address, companyname from {$dbtbpre}ecms_".$class_r[$classid][tbname]." where id='$id' and classid='$classid' limit 1");
if($r[id])
{
?>
document.write('<?=$r[mycontact]?>', '<?=$r[address]?>', '<?=$r[companyname]?>');
<?php
}
}
else
{
?>
document.write('登录后才能查看');
<?php
}
db_close();
$empire=null;
?>
如果多字段不在同一个位置,用这个:
复制几个show.php文件,改名,在模板页用——
比如:<script src="[!--news.url--]e/show_email.php?classid=[!--classid--]&id=[!--id--]"></script>这样
<script src="[!--news.url--]e/show_myarea.php?classid=[!--classid--]&id=[!--id--]"></script>
不过单一字段代码相应地要替换掉字段:
改
select id,title和<?=$r[title]?>'中的title
完整的单一字段title代码例子:
把show.php放到e目录里,内容为如下:
<?php
require("class/connect.php");
include("class/db_sql.php");
include("class/config.php");
include("class/class.php");
$link=db_connect();
$empire=new mysqlquery();
$classid=intval($_GET['classid']);
$id=intval($_GET['id']);
$muserid=(int)getcvar('mluserid');//用户id
$musername=RepPostVar(getcvar('mlusername'));//用户名
$mgroupid=(int)getcvar('mlgroupid');//会员组id
if($classid&&$id&&$class_r[$classid][tbname]&&$muserid)
{
$r=$empire->fetch1("select id,title from {$dbtbpre}ecms_".$class_r[$classid][tbname]." where id='$id' and classid='$classid' limit 1");
if($r[id])
{
?>
document.write('标题:<?=$r[title]?>');
<?php
}
}
else
{
?>
document.write('登录后才能查看');
<?php
}
db_close();
$empire=null;
?>
内容模板显示调用
<script src="[!--news.url--]e/show.php?classid=[!--classid--]&id=[!--id--]"></script>
上面的sql语句只是查询title,其他字段自行修改
文章来自:http://bbs.phome.net/showthread-13-89138-0.html
新闻资讯 更多
- 【帝国cms教程】帝国CMS模板变量$GLOBALS[navclassid]用法分析04-03
- 【帝国cms教程】鲜为人知帝国CMS内容页调用上一篇和下一篇的精华方法汇总04-03
- 【帝国cms教程】怎么快速找出帝国CMS数据库配置文件路径及迁移网站后修改技巧!04-03
- 【帝国cms教程】帝国CMS模板$GLOBALS[navclassid]用法详解04-03
- 【帝国cms教程】帝国cms 7.5版列表页分页样式修改笔记04-02
- 【帝国cms教程】解决帝国CMS搜索页面模板不支持灵动标签和万能标签的方法04-02
- 【帝国cms教程】帝国CMS只备份栏目和模板的方法04-02
- 【帝国cms教程】帝国CMS怎样删除清空数据库记录?04-02
热门文章
- 178Moban源码谈谈免费源码与收费源码的区别
- 2帝国CMS忘记后台登陆用户名、密码、认证码的解决方法
- 3帝国CMS(EmpireCMS) v7.5后台任意代码执行漏洞及具体修复方法
- 4帝国CMS和WordPress 哪个好?哪个适合建站?
- 5如何解决Discuz的密码错误次数过多请15分钟后登陆的问题
- 6帝国cms灵动标签取得内容和栏目链接地址
- 7emlog pro 注册码“开心”教程(如果有一天,emlog官方版 或者 emlog免费版 跑路了,那用户怎么办?)
- 8织梦CMS在nginx下设置伪静态方法(附nginx伪静态规则)
- 9帝国cms后台登录出现”您还未登录”怎么解决?
- 10帝国cms7.5忘记登录密码 和忘记登录认证码以及多次登录 失败被锁定解决办法