Example #1
0
 public function _empty()
 {
     $plugin_name = $_GET['_module'];
     $action_name = $_GET['_action'];
     $info = model('plugin')->info_table($plugin_name);
     if (empty($info)) {
         cpError::show($_GET['_module'] . '模块或插件不存在');
     } else {
         if ($info['status'] == 1) {
             if (Plugin::run($plugin_name, $action_name) == false) {
                 cpError::show($_GET['_module'] . '模块或插件不存在');
             }
         } else {
             cpError::show($_GET['_module'] . '模块或插件不存在');
         }
     }
 }
Example #2
0
 public static function noPower()
 {
     cpError::show('您没有权限操作');
 }
Example #3
0
 public function run()
 {
     try {
         //网址解析
         if (function_exists('url_parse_ext')) {
             url_parse_ext();
             //自定义网址解析
         } else {
             $this->_parseUrl();
             //解析模块和操作
         }
         //模块或操作为空,则设置默认值
         self::$module = empty(self::$module) ? $this->appConfig['MODULE_DEFAULT'] : self::$module;
         self::$action = empty(self::$action) ? $this->appConfig['ACTION_DEFAULT'] : self::$action;
         //在其他页面通过$_GET['_module']和$_GET['_action']获取得到当前的模块和操作名
         $_GET['_module'] = self::$module;
         $_GET['_action'] = self::$action;
         //如果存在初始程序,则先加载初始程序
         if (file_exists($this->appConfig['MODULE_PATH'] . $this->appConfig['MODULE_INIT'])) {
             require $this->appConfig['MODULE_PATH'] . $this->appConfig['MODULE_INIT'];
         }
         $this->_define();
         //常量定义
         //检查指定模块是否存在
         if (preg_match("#^[a-z0-9_]+\$#i", self::$module) && $this->_checkModuleExists(self::$module)) {
             $module = self::$module;
         } else {
             if ($this->_checkModuleExists($this->appConfig['MODULE_EMPTY'])) {
                 //如果指定模块不存在,则检查是否存在空模块
                 $module = $this->appConfig['MODULE_EMPTY'];
             } else {
                 throw new Exception(self::$module . "模块不存在", 404);
                 //指定模块和空模块都不存在,则显示出错信息,并退出程序。
             }
         }
         //如果开启静态页面缓存,则尝试读取静态缓存
         if (false == $this->_readHtmlCache($module, self::$action)) {
             //静态缓存读取失败,执行模块操作
             $this->_execute($module);
         }
         //如果存在回调函数cp_app_end,则在即将结束前调用
         if (function_exists('cp_app_end')) {
             cp_app_end();
         }
     } catch (Exception $e) {
         cpError::show($e->getMessage(), $e->getCode());
     }
 }
Example #4
0
    $sql_array = Install::mysql('../data/test.sql', 'dc_', $DB_PREFIX);
} else {
    $sql_array = Install::mysql('../data/db.sql', 'dc_', $DB_PREFIX);
}
//执行数据库操作
foreach ($sql_array as $sql) {
    $model->db->query($sql);
    //安装数据
}
//修改配置文件
$config_array = array();
foreach ($config as $key => $value) {
    $config_array["config['" . $key . "']"] = $value;
}
if (!set_config($config_array)) {
    cpError::show('配置文件写入失败!');
}
//安装成功,创建锁定文件
$data_dir = dirname(__FILE__) . '/../data/';
if (!is_dir($data_dir)) {
    @mkdir($data_dir);
}
@fopen($data_dir . 'install.lock', 'w');
//安装成功,跳转到首页
@header("location:./../index.php");
//修改配置的函数
function set_config($array, $config_file = './../inc/data.php')
{
    if (empty($array) || !is_array($array)) {
        return false;
    }
Example #5
0
 public function error($str)
 {
     cpError::show($str);
 }