Размер файла: 3.05Kb
<?php
include '../../engine/includes/start.php';
if (!$creator)
Core::stop();
$set['title']='Резервное копирование файлов';
require incDir.'head.php';
Core::get('text.class', 'classes');
//@set_time_limit(20);
echo '<div class="menu_razd">Выбор файлов</div>';
echo '<div class="post"><img src="/style/users/icons/1.png"/> <a href="/pages/user.php?id=2">Система</a><br />Резервное копирование долгий и ресурсоемкий процесс, если бекап не создается, раскоментируйте 9-строку <b>set_time_limit(20);</b>. На бесплатных хостингах, резервное копирование является платным, на платных нет смысла делать =)</div>';
if (isset($_POST['file_zip']))
{
foreach ( $_POST['file_zip'] as $file )
{
$arr[] = H . $file;
}
$name = empty($_POST['name']) ? 'Backup_'.mt_rand(12,1222) : $_POST['name'];
if (is_file(H.'engine/files/backup/files/'.$name.'.zip') and empty($_POST['delcopy']) )
{
echo 'Архив '. $name .'.zip уже есть!<br/><a href="backup.php">Повторить</a>';
require incDir.'foot.php';
}
elseif (is_file(H.'engine/files/backup/files/'.$name.'.zip'))
{
echo 'Архив '. $name .'.zip заменен<br/>';
}
Core::get('zip', 'classes');
$create = new PclZip(H.'engine/files/backup/files/'.$name.'.zip');
//$create -> ($arr, PCLZIP_OPT_REMOVE_PATH, '\\');
Core::msg_show($create -> create($arr, PCLZIP_OPT_REMOVE_PATH, H) == 0 ? $create -> errorInfo(true) : 'Архив создан!');
unset($create, $file);
}
echo '<form method="post"><input type="text" name="name" size="40" value="Backup__'.date("d_m_y").'__'.(mt_rand(0,999)).'"/><br/>';
$dir = opendir('../../');
echo isset($_GET['get']) ? '<a href="?">Снять все</a>':'<a href="?get">Отметить все</a>';
while ($file = readdir($dir))
{
if ($file != '.' && $file != '..')
{
echo '
<div class="link"><label>
<input type="checkbox" '.(isset($_GET['get'])?'checked="checked"':'').' name="file_zip[]" value="'. $file .'"/> '.$file .' ('. (is_file(H . $file) ? text::size_data(filesize(H.$file)) : 'папка' ) .')
</label></div>';
}
}
closedir($dir);
?>
<div class="post"><input type="checkbox" checked="checked" name="delcopy" value="1"/> Заменить при совпадении имен</div>
<input type="submit" name="create" value="Архивировать" /></form>
<div class="menu_razd">См. также</div>
<a href='/admin/backup/list.php'><div class="link">Список Backup</div></a>
<a href='mysql.php'><div class="link">Резервное копирование базы данных</div></a>
<a href='/admin/'><div class="link">Админка</div></a>
<?
require incDir.'foot.php';