View file public_html/mpanel/backup.php

File size: 7.51Kb
<?php
#-----------------------------------------------------#
#          ********* WAP-MOTORS *********             #
#             Made by   :  VANTUZ                     #
#               E-mail  :  [email protected]         #
#                 Site  :  http://pizdec.ru           #
#             WAP-Site  :  http://visavi.net          #
#                  ICQ  :  36-44-66                   #
#  Вы не имеете право вносить изменения в код скрипта #	
#-----------------------------------------------------#
#            ***** Site BackUp v2.5 *****             #
#           Modify by  :  Ugon_HarleeV                #
#              E-mail  :  [email protected]            #
#            WAP-Site  :  http://harleev.h2m.ru       #
#                 ICQ  :  342-662-120                 #
#-----------------------------------------------------#
require_once"../template/start.php";
require_once"../template/regglobals.php";
require_once"../template/config.php";
require_once"../template/functions.php";
require_once"../template/antidos.php";
require_once"../template/cookies.php";
require_once"../template/gzip.php";
require_once"../template/header.php";
require_once"../template/referer.php";
include_once"../themes/$config_themes/index.php";
include_once"../template/isset.php";

include_once"../template/pclzip.php";

set_time_limit(600); 
$filearc=check($filearc);
$cday = date("d-M-Y", $sitetime);
$ctime = date("H-i-s", $sitetime);

if ($provlog==$_SESSION['log'] && $provpar==md5($_SESSION['par']) && $_SESSION['log']!="" && md5($_SESSION['par'])!="") {
if ($dostup==101){
	
echo'<img src="../images/img/partners.gif" alt=""> <b>Backup сайта</b><br><br>';
	
//---------------------- Форма выбора файлов и папок ------------------------------//	
if(!isset($action)){

echo 'Вы можете сейчас сделать бэкап скачав все данные из папки local в запакованном архиве zip<br>';
echo 'И потом в случае сбоя сервера, все данные можно легко восстановить<br><hr>';


$dir = opendir('../local/databackup');
while ($file = readdir($dir)){ 
if (ereg ("\.zip$", $file)){$arcount++;

$array_backup[] = $file;
$array_timebackup[] = filemtime('../local/databackup/'.$file);
$array_sizebackup[] = filesize('../local/databackup/'.$file);
}}
closedir($dir);


arsort($array_timebackup);

foreach($array_timebackup as $key=>$value){


echo '<div class=b><img src="../images/img/zip.gif" alt=""> ';
echo $array_backup[$key].' <b>('.formatsize($array_sizebackup[$key]).')</b></div>';
echo '<a href="backup.php?action=prounzip&amp;filearc='.$array_backup[$key].'&amp;'.SID.'">[Восстановить]</a> ';
echo '<a href="backup.php?action=del&amp;filearc='.$array_backup[$key].'&amp;'.SID.'"><font color="#FF0000">[Удалить]</font></a><br>';

}



$totalarc = count($array_backup);
if($totalarc>0){
echo '<br><b>Всего архивов: '.(int)$totalarc.'</b>';
} else {
echo '<img src="../images/img/reload.gif" alt=""> <b>Нет ни одного бэкапа</b>';
}
echo '<hr>';


echo '<br><img src="../images/img/backup.gif" alt=""> <a href="backup.php?action=backup&amp;'.SID.'">Создать</a>';
} 


//--------------------------------- Бэкап сайта -------------------------------------//
if ($action == "backup"){

if(is_writeable(BASEDIR."local/databackup")){

echo 'Выберите директории для архивации<br><br>';

$dir = opendir (BASEDIR."local"); 
while ($file = readdir ($dir)) {
if (is_dir(BASEDIR."local/$file")) {
if($file=="."||$file==".."||$file=="databackup"||$file=="datatmp"||$file=="datados") continue;
$backdir_array[]=$file;
}}  
closedir ($dir);  

sort($backdir_array);



if ($config_themes!="wml"){
echo '<form method="post" action="backup.php?action=newbackup&amp;'.SID.'">';

foreach($backdir_array as $value){
echo '<input name="dirarc[]" value="'.$value.'" type="checkbox" checked> <img src="../images/img/dir.gif" alt=""> '.$value.' <b>('.formatsize(read_dir(BASEDIR."local/$value")).')</b><br>';
}

echo '<br><input type="submit" value="Сделать бекап" /></form><hr>';

} else {

echo '<select name="dirarc" multiple="true">';

foreach($backdir_array as $value){
echo'<option value="'.$value.'">'.$value.' ('.formatsize(read_dir(BASEDIR."local/$value")).')</option>';
}

echo '</select><br>';
echo '<anchor>Сделать бекап';
echo '<go href="backup.php?action=newbackup&amp;ver=wml&amp;'.SID.'" method="post">';
echo '<postfield name="dirarc" value="$(dirarc)"/>';
echo '</go></anchor><br>--------------------<br>';

}



}else{echo '<b>Ошибка! Запрещена запись в папку local/databackup</b><br>';}

echo '<br><img src="../images/img/back.gif" alt=""> <a href="backup.php?'.SID.'">Вернуться</a>';
}




//--------------------------------- Создание бэкапа сайта -------------------------------------//
if ($action == "newbackup"){

if ($dirarc!=""){

if($ver=="wml"){$dirarc = explode(";",$dirarc);}

$nam_backup = 'backup_'.$cday.'_'.$ctime.'.zip';

$dir = opendir (BASEDIR."local"); 
while ($file = readdir ($dir)) {
if (is_file(BASEDIR."local/$file")) {
$filesarc[]=$file;
}}  
closedir ($dir);  

$result = array_merge($filesarc,$dirarc);

$newarc=implode(",../local/",$result);
$newarc="../local/$newarc";

$archive = new PclZip('../local/databackup/'.$nam_backup);
$v_list = $archive->add($newarc,PCLZIP_OPT_REMOVE_PATH, '../local');
chmod ("../local/databackup/$nam_backup", 0777);  

header ("Location: backup.php?isset=mp_yesbackup&".SID);  exit;

if ($v_list == 0) {echo '<b>Ошибка! Не удалось создать архив с данными</b><br>';} 
} else { echo '<b>Ошибка! Вы не выбрали директории для аривации</b><br>'; }

     
echo '<br><img src="../images/img/back.gif" alt=""> <a href="backup.php?action=backup&amp;'.SID.'">Вернуться</a>';

}



//---------------------------------  Удаление архивов -------------------------------------//
if ($action == "del"){
if(!empty($filearc)){	
unlink ("../local/databackup/$filearc");}
header ("Location: backup.php?isset=mp_delbackup&".SID);  exit;
}



//-------------------------Подтверждение востановления архивов ----------------------------//
if ($action == "prounzip"){

echo 'Вы подтверждаете, что хотите восстановить бэкап сайта <b>'.$filearc.'</b>?<br><br>';
echo '<img src="../images/img/reload.gif" alt=""> ';
echo '<b><a href="backup.php?action=unzip&amp;filearc='.$filearc.'&amp;'.SID.'">Да, подтверждаю</a></b><br><br>';

echo '<img src="../images/img/back.gif" alt=""> <a href="backup.php?'.SID.'">Вернуться</a>';
}



//------------------------------  Востановление архивов -----------------------------------//
if ($action == "unzip"){
	
$archive = new PclZip("../local/databackup/$filearc");
//$archive->extract(PCLZIP_OPT_PATH, '../local/',PCLZIP_OPT_SET_CHMOD, 0777); 
$archive->extract(PCLZIP_OPT_PATH, '../local/');

header ("Location: backup.php?isset=mp_restorebackup&".SID);  exit;
}
  
echo'<br><img src="../images/img/panel.gif" alt=""> <a href="index.php?'.SID.'">В админку</a><br>';
echo'<img src="../images/img/homepage.gif" alt=""> <a href="../index.php?'.SID.'">На главную</a><br>';

} else {header ("Location: ../index.php?isset=404&".SID);}
} else {header ("Location: ../index.php?isset=404&".SID);}

include_once"../themes/$config_themes/foot.php";
?>