- 论坛徽章:
- 0
|
又一例子,至少可以提供一种思路吧。
先贴过来吧,不要怪我乱啊。
来源:http://www.baixi.org/bbs/viewthread.php?tid=7272
创建程序视图类:page.class.php
引用:
<?php
/*
ID: page.class.php, Last update: 2008/08/26, Author: Leon Lin(QQ:82756)
类名:GreatePage(创建程序视图类)
主方法:DisplayHeader、IsLogin、DisplayFooter
*/
class CreatePage
{
#主菜单数组
public $menu;
#子菜单
public $subMenu;
#主菜单当前位置
public $parentLocation;
#子菜单当前位置
public $subLocation;
#功能菜单当前位置
public $functionLocation;
#访问权限
public $purview;
//构造函数
public function __construct()
{
session_start();
}
//顶部内容
public function DisplayHeader()
{
echo '
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<meta http-equiv="Content-Type" c/>
<meta name="keywords" c />
<meta name="description" c />
<meta name="generator" c />
<meta name="author" c />
<meta name="copyright" c />
<meta name="robots" c>
<title>'.$this->parentLocation.' - '.$this->subLocation.' - '.$this->functionLocation.' - '.WEBSITE_NAME.'</title>
<link href="css/default.css" rel="stylesheet" type="text/css" />
<script type="text/javascript">
function displaySubMenu(li) {
var subMenu = li.getElementsByTagName("ul")[0];
subMenu.style.display = "block";
}
function hideSubMenu(li) {
var subMenu = li.getElementsByTagName("ul")[0];
subMenu.style.display = "none";
}
</script>
</head>
<body >
<div class="parent">
<div class="logo">'.SOFT_NAME.'<sup style="font-size:10px; font-weight:normal">TM</sup></div>
<div class="menu">
<ul>
';
#一级菜单
for($one=0; $one<count($this->menu); $one++)
{
#菜单权限分配
$onecheck = explode(',', $this->menu[$one][2]);
if ( isset($_SESSION[SOFT_KEY.'UserLevel']) && in_array($_SESSION[SOFT_KEY.'UserLevel'], $onecheck) )
{
echo '<li >';
if ($this->parentLocation==$this->menu[$one][0])
echo "<a href=\"?action=".$this->menu[$one][1]."\" class=\"over\">".$this->menu[$one][0]."</a>";
else
echo "<a href=\"?action=".$this->menu[$one][1]."\">".$this->menu[$one][0]."</a>";
#二级菜单
if (count($this->menu[$one][3])>0)
{
echo '<ul>';
for($two=0; $two<count($this->menu[$one][3]); $two++)
{
#菜单权限分配
$twocheck = explode(',', $this->menu[$one][3][$two][2]);
if ( isset($_SESSION[SOFT_KEY.'UserLevel']) && in_array($_SESSION[SOFT_KEY.'UserLevel'], $twocheck) )
{
echo "<li><a href=\"?action=".$this->menu[$one][3][$two][1]."\">".$this->menu[$one][3][$two][0]."</a></li>";
}
}
echo '</ul>';
}
echo '</li>';
}
}
echo '
</ul>
</div>
</div>
';
echo '
<div class="sub">
<div class="floatleft">
';
foreach($this->subMenu as $name=>$module)
{
if ($this->functionLocation==$name)
{
echo "<a href=\"?action=$module\" class=\"over\">$name</a>";
}else{
echo "<a href=\"?action=$module\">$name</a>";
}
}
echo '
</div>
<div class="floatright" style="padding-right:10px; color:#999999">当前位置:'.$this->parentLocation.' > '.$this->subLocation.' > '.$this->functionLocation.'</div>
</div>
';
echo '
<div class="content">
';
}
//底部主内容
public function DisplayFooter()
{
echo '
</div>
<div class="copyright">
<div class="floatleft">©'.date("Y").' '.WEBSITE_COPYRIGHT_COMPANY.' 版权所有</div>
<div class="floatright">Coded by Leon Lin</div>
</div>
</body>
</html>
';
}
//登录后提示字幕
private function DisplayTip()
{
if (isset($_SESSION[SOFT_KEY.'UserID'])&&isset($_SESSION[SOFT_KEY.'UserLevel'])&&isset($_SESSION[SOFT_KEY.'Fullname']))
{
return '您好 '.$_SESSION[SOFT_KEY.'Fullname'].',欢迎登录'.WEBSITE_NAME.'!';
}
}
//身份验证
public function IsLogin()
{
if (!isset($_SESSION[SOFT_KEY.'UserID'])||!isset($_SESSION[SOFT_KEY.'UserLevel'])||!isset($_SESSION[SOFT_KEY.'Fullname'])) header("Location:index.php?action=logout");
#自定义访问权限验证
if (!empty($this->purview))
{
$purview = explode(',', $this->purview);
if ( !in_array($_SESSION[SOFT_KEY.'UserLevel'], $purview) )
{
Warning("抱谦:权限不足!");
}
}
}
}
?> |
|