コード例 #1
0
ファイル: iPatch.class.php プロジェクト: sunhk25/iCMS
 public static function update()
 {
     @set_time_limit(0);
     // Unzip uses a lot of memory
     @ini_set('memory_limit', '256M');
     require iPHP_CORE . '/pclzip.class.php';
     //加载zip操作类
     $zipFile = PATCH_DIR . '/' . self::$zipName;
     //临时文件
     $msg = '正在对 [' . self::$zipName . '] 更新包进行解压缩<iCMS>';
     $zip = new PclZip($zipFile);
     if (false == ($archive_files = $zip->extract(PCLZIP_OPT_EXTRACT_AS_STRING))) {
         exit("ZIP包错误");
     }
     if (0 == count($archive_files)) {
         exit("空的ZIP文件");
     }
     $msg .= '解压完成开始更新程序#<iCMS>';
     $bakDir = iPATH . self::$release . 'bak';
     iFS::mkdir($bakDir);
     foreach ($archive_files as $file) {
         $folder = $file['folder'] ? $file['filename'] : dirname($file['filename']);
         $dp = iPATH . $folder;
         if (!iFS::ex($dp)) {
             $msg .= '创建 [' . $dp . '] 文件夹<iCMS>';
             iFS::mkdir($dp);
         }
         if (empty($file['folder'])) {
             $fp = iPATH . $file['filename'];
             $bfp = $bakDir . '/' . $file['filename'];
             iFS::mkdir(dirname($bfp));
             if (iFS::ex($fp)) {
                 $msg .= '备份 [' . $fp . '] 文件 到 [' . $bfp . ']<iCMS>';
                 @rename($fp, $bfp);
                 //备份旧文件
             }
             $msg .= '更新 [' . $fp . '] 文件<iCMS>';
             iFS::write($fp, $file['content']);
             $msg .= '[' . $fp . '] 更新完成!#<iCMS>';
         }
     }
     $msg .= '清除临时文件!<iCMS>注:原文件备份在 [' . $bakDir . '] 目录<iCMS>如没有特殊用处请删除此目录!#<iCMS>';
     iFS::rmdir(PATCH_DIR, true, 'version.txt');
     return $msg;
 }
コード例 #2
0
ファイル: article.table.php プロジェクト: sunhk25/iCMS
 public static function del_text($id, $page = 1)
 {
     iFS::rmdir(iPATH . '/' . self::get_text_dir($id) . '/');
 }
コード例 #3
0
ファイル: editor.app.php プロジェクト: World3D/iCMS
 function do_uploadscrawl()
 {
     if ($_GET["action"] == "tmpImg") {
         // 背景上传
         iFS::$callback = false;
         $F = iFS::upload('upfile', 'scrawl/tmp');
         $F === false && exit;
         $F['path'] && ($url = iFS::fp($F['path'], '+http'));
         echo "<script>parent.ue_callback('" . $url . "','SUCCESS')</script>";
     } else {
         iFS::$callback = true;
         $F = iFS::base64ToFile($_POST['upfile'], 'scrawl/' . get_date(0, 'Y/md'));
         $F === false && exit(iFS::$ERROR);
         $F['path'] && ($url = iFS::fp($F['path'], '+http'));
         $tmp = iFS::get_dir() . "scrawl/tmp/";
         iFS::rmdir($tmp);
         iPHP::json(array("url" => $url, "state" => 'SUCCESS'));
     }
 }
コード例 #4
0
ファイル: database.app.php プロジェクト: sunhk25/iCMS
 function do_del()
 {
     $this->bakdir or iPHP::alert('请选择要删除的备份卷');
     $backupdir = iPHP_APP_CACHE . '/backup/' . $this->bakdir;
     if (iFS::rmdir($backupdir)) {
         iPHP::success('备份文件已删除!', 'js:parent.$("#' . md5($this->bakdir) . '").remove();');
     }
 }
コード例 #5
0
ファイル: files.app.php プロジェクト: sunhk25/iCMS
 function do_deldir()
 {
     iACP::MP('FILE.DELETE', 'alert');
     $_GET['path'] or iPHP::alert("请选择要删除的目录");
     strpos($_GET['path'], '..') !== false && iPHP::alert("目录路径中带有..");
     $hash = md5($_GET['path']);
     $dirRootPath = iFS::fp($_GET['path'], '+iPATH');
     if (iFS::rmdir($dirRootPath)) {
         $msg = 'success:#:check:#:目录删除完成!';
         $_GET['ajax'] && iPHP::json(array('code' => 1, 'msg' => $msg));
     } else {
         $msg = 'warning:#:warning:#:找不到相关目录,目录删除失败!';
         $_GET['ajax'] && iPHP::json(array('code' => 0, 'msg' => $msg));
     }
     iPHP::dialog($msg, 'js:parent.$("#' . $hash . '").remove();');
 }
コード例 #6
0
ファイル: install.php プロジェクト: World3D/iCMS
    $setting['router']['404'] = $router_url . '/public/404.htm';
    $setting['router']['tag_url'] = $router_url;
    $setting['FS']['url'] = $router_url . '/res/';
    $setting['template']['mobile']['domain'] = $router_url;
    $setting['template']['device'][0]['domain'] = $router_url;
    foreach ($setting as $n => $v) {
        is_array($v) && ($v = addslashes(serialize($v)));
        iDB::query("UPDATE `#iCMS@__config` SET `value` = '{$v}' WHERE `appid` ='0' AND `name` ='{$n}'");
    }
    $output = "<?php\ndefined('iPHP') OR exit('Access Denied');\nreturn ";
    $output .= var_export($setting, true);
    $output .= ';';
    iFS::write(iPATH . 'conf/iCMS/config.php', $output, false);
    //写入数据库配置<hr />开始安装数据库<hr />数据库安装完成<hr />设置超级管理员<hr />更新网站缓存<hr />
    iFS::write($lock_file, 'iCMS.' . time(), false);
    iFS::rmdir(iPATH . 'install');
    iPHP::success("安装完成", 'js:top.install.step4();');
}
function run_query($sql)
{
    $sql = str_replace("\r", "\n", $sql);
    $resource = array();
    $num = 0;
    $sql_array = explode(";\n", trim($sql));
    foreach ($sql_array as $query) {
        $queries = explode("\n", trim($query));
        foreach ($queries as $query) {
            $resource[$num] .= $query[0] == '#' ? '' : $query;
        }
        $num++;
    }
コード例 #7
0
ファイル: iPatch.class.php プロジェクト: Junred/iCMS
 public static function update()
 {
     @set_time_limit(0);
     // Unzip uses a lot of memory
     @ini_set('memory_limit', '256M');
     require iPHP_CORE . '/pclzip.class.php';
     //加载zip操作类
     $zipFile = PATCH_DIR . '/' . self::$zipName;
     //临时文件
     $msg = '正在对 [' . self::$zipName . '] 更新包进行解压缩<iCMS>';
     $zip = new PclZip($zipFile);
     if (false == ($archive_files = $zip->extract(PCLZIP_OPT_EXTRACT_AS_STRING))) {
         exit("ZIP包错误");
     }
     if (0 == count($archive_files)) {
         exit("空的ZIP文件");
     }
     $msg .= '解压完成<iCMS>';
     $msg .= '开始测试目录权限<iCMS>';
     $bakDir = iPATH . self::$release . 'bak';
     $update = true;
     if (!self::checkDir(iPATH)) {
         $update = false;
         $msg .= iPATH . ' 目录无写权限<iCMS>';
     }
     //测试目录文件是否写
     foreach ($archive_files as $file) {
         $folder = $file['folder'] ? $file['filename'] : dirname($file['filename']);
         $dp = iPATH . $folder;
         if (!self::checkDir($dp) && iFS::ex($dp)) {
             $update = false;
             $msg .= $dp . ' 目录无写权限<iCMS>';
         }
         if (empty($file['folder'])) {
             $fp = iPATH . $file['filename'];
             if (file_exists($fp) && !@is_writable($fp)) {
                 $update = false;
                 $msg .= $fp . ' 文件无写权限<iCMS>';
             }
         }
     }
     if (!$update) {
         $msg .= '权限测试无法完成<iCMS>';
         $msg .= '请设置好上面提示的文件写权限<iCMS>';
         $msg .= '然后重新更新<iCMS>';
         iPatch::$next = false;
         return $msg;
     }
     //测试通过!
     iPatch::$next = true;
     iFS::mkdir($bakDir);
     $msg .= '权限测试通过<iCMS>';
     $msg .= '备份目录创建完成<iCMS>';
     $msg .= '开始更新程序<iCMS>';
     foreach ($archive_files as $file) {
         $folder = $file['folder'] ? $file['filename'] : dirname($file['filename']);
         $dp = iPATH . $folder;
         if (!iFS::ex($dp)) {
             $msg .= '创建 [' . $dp . '] 文件夹<iCMS>';
             iFS::mkdir($dp);
         }
         if (empty($file['folder'])) {
             $fp = iPATH . $file['filename'];
             $bfp = $bakDir . '/' . $file['filename'];
             iFS::mkdir(dirname($bfp));
             if (iFS::ex($fp)) {
                 $msg .= '备份 [' . $fp . '] 文件 到 [' . $bfp . ']<iCMS>';
                 @rename($fp, $bfp);
                 //备份旧文件
             }
             $msg .= '更新 [' . $fp . '] 文件<iCMS>';
             iFS::write($fp, $file['content']);
             $msg .= '[' . $fp . '] 更新完成!<iCMS>';
         }
     }
     $msg .= '清除临时文件!<iCMS>注:原文件备份在 [' . $bakDir . '] 目录<iCMS>如没有特殊用处请删除此目录!<iCMS>';
     iFS::rmdir(PATCH_DIR, true, 'version.txt');
     return $msg;
 }