phpcms2008代码分析2008-12-11(/admin.php)

看了几天phpcms2008并初试做个模块,准备就phpcms2008写出点东西,不敢再技术论坛班门弄斧,就在自己博客小试牛刀了,呵呵,不足地方请大家指点,小弟是菜鸟,高手路过不要见笑~~

// 定义常量
define('IN_ADMIN', TRUE);

加载函数文件和通用文件
require dirname(__FILE__).'/include/admin/global.func.php';
require dirname(__FILE__).'/include/common.inc.php';

加载一些常用类
require 'log.class.php';     //日志类
require 'form.class.php';     //表单类
require 'priv_role.class.php';      //权限角色类
require_once 'cache.func.php';   //缓存函数
require_once 'version.inc.php';    //版本信息
require PHPCMS_ROOT.'languages/'.LANG.'/phpcms_admin.lang.php';    //后台语言文件

if(!isset($file)) $file = 'index';    //无设置文件名时指定index
preg_match("/^[0-9A-Za-z_-]+$/", $file) or showmessage('Invalid Request.');   //判断文件名格式
$action = isset($action) ? $action : '';    //获取行为操作
$catid = isset($catid) ? intval($catid) : 0;    //获取栏目ID
$specialid = isset($specialid) ? intval($specialid) : 0;   //获取专题Id
if(!isset($forward) && str_exists(HTTP_REFERER, '?')) $forward = HTTP_REFERER;    无设置跳转页面或执行操作时指定

session_start();     //指定会话开始

//根据用户id,组别和session中的is_admin布尔值判断是否管理员,并读取角色信息

if($_userid && $_groupid == 1 && $_SESSION['is_admin'] == 1)
{
 $ROLE = cache_read('role.php');  //角色文件
 $GROUP = cache_read('member_group.php');   //组文件
 $POS = cache_read('position.php');   
 $STATUS = cache_read('status.php');     //状态文件
 $_roleid = cache_read('admin_role_'.$_userid.'.php');   // 用户角色信息
 if(!$_roleid) showmessage('您没有任何角色权限!');    // 没有次用户的角色信息,发出提示
 $priv_role = new priv_role();    //角色类
 if(!$priv_role->module()) showmessage('您没有操作权限!');   //判断是否有该模块的操作权限
}

//如果没有登陆,提示登陆
elseif($file != 'login')
{
 showmessage('请登录!', '?mod=phpcms&file=login&forward='.urlencode(URL),1,1);
}

//记录登录日志

$log = new log();
if(ADMIN_LOG && $file != 'database' && !in_array($action, array('get_menu_list', 'menu_pos')))
{
 $log->set('admin', 0);
 $log->add();
}

//倘若phpcms模块不存在或者模块admin.inc.php不存在,给予提示
if($mod != 'phpcms' && !@include PHPCMS_ROOT.$M['path'].'admin/admin.inc.php') showmessage('The file ./'.$M['path'].'admin.inc.php is not exists!');

//判断模块中admin下文件是否存在
if(!@include PHPCMS_ROOT.(isset($M['path']) ? $M['path'] : '').'admin/'.$file.'.inc.php') showmessage("The file ./{$M['path']}admin/{$file}.inc.php is not exists!");
?>

 

 

=============================================================================

require 'log.class.php';     //日志类
require 'form.class.php';     //表单类

          editor($textareaid = 'content', $toolbar = 'standard', $width = '100%', $height = 400, $isshowext = 1)

          date($name, $value = '', $isdatetime = 0)

          checkcode($name = 'checkcode', $size = 4, $extra = '')

         style($name = 'style', $style = '')

         text($name, $id = '', $value = '', $type = 'text', $size = 50, $class = '', $ext = '', $minlength = '', $maxlength = '', $pattern = '', $errortips = '')

         textarea($name, $id = '', $value = '', $rows = 10, $cols = 50, $class = '', $ext = '')

         select($options, $name, $id = '', $value = '', $size = 1, $class = '', $ext = '')

         multiple($options, $name, $id = '', $value = '', $size = 3, $class = '', $ext = '')

         checkbox($options, $name, $id = '', $value = '', $cols = 5, $class = '', $ext = '', $width = 100)

         radio($options, $name, $id = '', $value = '', $cols = 5, $class = '', $ext = '', $width = 100)

         _option($options, $s1 = " ", $s2 = '|')

         image($name, $id = '', $value = '', $size = 50, $class = '', $ext = '', $modelid = 0, $fieldid = 0)

         file($name, $id = '', $size = 50, $class = '', $ext = '')

         downfile($name, $id = '', $value = '', $size = 50, $mode, $class = '', $ext = '')

          upload_image($name, $id = '', $value = '', $size = 50, $class = '', $property = '')

          select_template($module, $name, $id = '', $value = '', $property = '', $pre = '')

          select_file($name, $id = '', $value = '', $size = 30, $catid = 0, $isimage = 0)

           select_module($name = 'module', $id ='', $alt = '', $value = '', $property = '')

          select_model($name = 'modelid', $id ='', $alt = '', $modelid = '', $property = '')

           select_member_model($name = 'modelid', $id = '', $alt = '', $modelid = '', $property = '')

            select_category($module = 'phpcms', $parentid = 0, $name = 'catid', $id ='', $alt = '', $catid = 0, $property = '', $type = 0, $optgroup = 0)

            select_pos($name = 'posid', $id ='', $posids = '', $cols = 1, $width = 100)

              select_group($name = 'groupid', $id ='', $groupids = '', $cols = 1, $width = 100)

             select_type($module = 'phpcms', $name = 'typeid', $id ='', $alt = '', $typeid = 0, $property = '')

              select_area($name = 'areaid', $id ='', $alt = '', $parentid = 0, $areaid = 0, $property = '')

              select_urlrule($module = 'phpcms', $file = 'category', $ishtml = 1, $name = 'urlruleid', $id ='', $urlruleid = 0, $property = '')
require 'priv_role.class.php';    //角色控制类(操作主表admin_role_priv)

            add($field, $value, $priv, $roleid)    //添加权限信息

            delete($field, $value, $priv = '', $roleid = 0)   //删除权限信息

            update($field, $value, $priv_role)    //更新权限信息

            module()

            check($field, $value, $priv = '', $roleid = 0)   //检查权限

            get_roleid($field, $value, $priv = '')     //获取权限id

 

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值