帝国cms用户的菜单根据会员级别来判断,不同会员显示不同菜单
这个程序是根据会员组数据表(phome_enewsmembergroup)中level字段来判断
实现的功能是不同的会员可能显示不同的左侧菜单
首先建立两个数据表phome_enewsmembermenuclass,phome_enewsmembermenu
CREATE TABLE `phome_enewsmembermenuclass` (
`classid` int(10) NOT NULL auto_increment,
`classname` varchar(50) NOT NULL,
`pagetag` varchar(30) NOT NULL,
`myorder` int(5) NOT NULL,
PRIMARY KEY (`classid`)
) ENGINE=MyISAM DEFAULT CHARSET=utf8 AUTO_INCREMENT=4 ;
CREATE TABLE `phome_enewsmembermenu` (
`id` int(10) NOT NULL auto_increment,
`mtitle` varchar(50) NOT NULL,
`murl` varchar(255) NOT NULL,
`menuclassid` int(5) NOT NULL,
`gl0` int(2) NOT NULL,
`gl1` int(2) NOT NULL,
`gl2` int(2) NOT NULL,
`gl3` int(2) NOT NULL,
`myorder` int(10) NOT NULL,
PRIMARY KEY (`id`)
) ENGINE=MyISAM DEFAULT CHARSET=utf8 AUTO_INCREMENT=11 ;
然后找到/e/admin/adminstyle/1/menu/usercp.php这个文件,打开,在里面添加两个链接
找到
管理会员表单</a>
</td>
</tr>
<?
}
?>
这段代码,在这段代码下面添加以下代码
<tr>
<td class="file">
<a href="../../member/membermenu.php<?=$ecms_hashur['whehref']?>" target="main" onMouseOut="this.style.fontWeight=''" onMouseOver="this.style.fontWeight='bold'">管理会员菜单</a>
</td>
</tr>
<tr>
<td class="file">
<a href="../../member/membermenuclass.php<?=$ecms_hashur['whehref']?>" target="main" onMouseOut="this.style.fontWeight=''" onMouseOver="this.style.fontWeight='bold'">管理会员菜单分类</a>
</td>
</tr>
然后下载
找到/e/template/incfile/header.php
在头部某个位置添加如下代码函数
$result = mysql_query("select * from {$dbtbpre}enewsmembergroup where groupid = '$tmgetgroupid' limit 1 ");
while($row=mysql_fetch_array($result)){
$grouplevel = $row[level];
}
function getjuesemeun($tmgetgroupid){
global $dbtbpre,$public_r,$pagetag,$grouplevel;
$menuhtml = "";
$result = mysql_query("select * from {$dbtbpre}enewsmembermenuclass order by myorder,classid asc");
while($row=mysql_fetch_array($result)){
if($pagetag==$row[pagetag]){
$thisout = "thisout";
}
$result2 = mysql_query("select * from {$dbtbpre}enewsmembermenu where menuclassid = '$row[classid]' and gl".$grouplevel." = 1 order by myorder,id asc");
$count=mysql_num_rows($result2); //获取信息条数
if($count){
$menuhtml .= "<dl class='".$thisout."' id='sidebar".$row[classid]."'>";
$menuhtml .="<dt onClick='showcos(".$row[classid].")'>".$row[classname]."</dt>";
}
while($row2=mysql_fetch_array($result2)){
$menuhtml .= "<dd><a href='".$public_r['newsurl'].$row2[mutl]."'>".$row2[mtitle]."</a></dd>";
}
if($count){
$menuhtml .="</dl>";
}
}
return $menuhtml;
}
最后,在需要显示菜单的地方添加
echo getjuesemeun($tmgetgroupid);
然后在管理员后台,用户,会员管理,下面有管理会员菜单和管理会员菜单分类两个功能,这里添加的分类会根据会员的级别有不同的显示
getjuesemeun函数里面的html格式可以换成你自己的
目前这个格式是我自己写的帝国cms自适应会员中心使用的
·关于我们·免责声明·服务条款·RSS订阅·dede168.com技术支持
Copyright © 1998-2015 All rights reserved.