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; }
public static function del_text($id, $page = 1) { iFS::rmdir(iPATH . '/' . self::get_text_dir($id) . '/'); }
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')); } }
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();'); } }
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();'); }
$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++; }
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; }