帝国cms用户的菜单根据会员级别来判断,不同会员显示不同菜单

帝国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>



然后下载

editmembermenu.rar

找到/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.