View file mpanel/backup.php

File size: 8.46Kb
<?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/maincore.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/pclzip.php';
set_time_limit(600); 
$filearc=check($filearc);

$text = file("../local/profil/$log.prof"); 

if ($text!=""){
$udata = explode(":||:",$text[0]);
$provlog=trim($udata[0]);
$provpar=trim($udata[1]);
$dostup=trim($udata[7]);
$privat=trim($udata[10]);}

$currDate = date("d-M-Y", time());
$currTime = date("H-i-s", time());

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

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

echo '<form method="post" action="backup.php?action=backup&amp;'.SID.'" name="arc">';

$dir = opendir("../local");
while ($file = readdir($dir)){
if (( $file != "." && $file != ".." && $file != "databackup" && $file != "index.php")){
$filetype = filetype("../local/$file");
if ($filetype == "file"){
$is_file[]='<input name="arc['.$file.']" value="yes" type="checkbox" checked> <img src="../images/img/files.gif" alt=""> '.$file.'<br>';}
if ($filetype == "dir"){
$is_dir[]='<input name="arc['.$file.']" value="yes" type="checkbox" checked><font color="red"> <img src="../images/img/dir.gif" alt=""> 
'.$file.'</font><br>';	}
}}
closedir ($dir);

echo'Файлы<br>';
for($fi=0; $fi<count($is_file); $fi++){
echo $is_file[$fi];}

echo'<hr>Директории<br>';
for($di=0; $di<count($is_file); $di++){
echo $is_dir[$di];}

//echo '<hr><br><input name="all" value="yes" type="checkbox" /> выбрать все<br><br>';
echo '<br><input class="button" type="submit" value="Сделать бекап" /></form><hr>';
echo '<img src="../images/img/search.gif" alt=""> <a href="backup.php?action=view&amp;'.SID.'">Обзор</a><br>';
echo '<img src="../images/img/reload.gif" alt=""> <a href="backup.php?action=go&amp;'.SID.'">Upload</a>';
} 



//--------------------------------- Бекап сайта -------------------------------------//
if ($action == "backup"){
	
$nam_backup = 'backup_'.$currDate.'_'.$currTime.'.zip';

//if (!empty($arc) || $all=="yes"){
if (!empty($arc)){

/*
if ($all == "yes"){
$dir = opendir("../local");
while ($file = readdir($dir)){
if (( $file != "." && $file != ".." && $file != "databackup" && $file != "index.php")){
$arc[]=$file;	
}}
closedir ($dir);


foreach ($arc as $index){
$archive = new PclZip('../local/databackup/'.$nam_backup);
$v_list = $archive->add('../local/'.$index,PCLZIP_OPT_REMOVE_PATH, '../local');
chmod ("../local/databackup/$nam_backup", 0666);} 
} */
	
foreach ( $arc as $index => $value){
if ($value == "yes"){	
$archive = new PclZip('../local/databackup/'.$nam_backup.'');
$v_list = $archive->add('../local/'.$index,PCLZIP_OPT_REMOVE_PATH, '../local');
chmod ("../local/databackup/$nam_backup", 0666);}
}
 
 
header ("Location: backup.php?action=view&".SID);  
          
}else{echo 'Для архивирования ничего не выбрано<br>';
echo '<br><img src="../images/img/back.gif" alt=""> <a href="backup.php?'.SID.'">Вернуться</a>'; 
}   

      
}




//--------------------------------- Листинг всех архивов  -------------------------------------//
if ($action == "view"){
$dir = opendir('../local/databackup');
while ($file = readdir($dir)){ 
if (ereg (".zip$", $file)){$arcount++;

echo '<div class=b><img src="../images/img/zip.gif" alt=""> ';
echo $file.' <b>('.formatsize(filesize('../local/databackup/'.$file)).')</b></div>';
echo '<a href="backup.php?action=unzip&amp;filearc='.$file.'&amp;'.SID.'">Восстановить</a> ';
echo '<a href="backup.php?action=del&amp;filearc='.$file.'&amp;'.SID.'">Удалить</a><br>';
}}
closedir($dir);

if($arcount<1){echo 'Нет ни одного сохранения';}

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


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


//------------------------------  Востановление архивов -----------------------------------//
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/');
echo 'Данные из архива '.$filearc.' успешно восстановлены<br><br>';

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

//-------------------------  Форма ввода загрузки архивов ----------------------------//
if ($action == "go"){
	
echo '<form action="backup.php?action=upload&amp;'.SID.'" method="post" enctype="multipart/form-data">';
echo 'Выберите файл бэкапа:<br>';
echo '<input type="file" name="file" /><br><br>';
echo '<input type="submit" value="Загрузить" /></form>';
echo '<hr>Разрешается загружать только архивы с расширением .zip<br>';
echo 'Максимальный размер загружаемого архива ограничен вашим серверов, в среднем можно загружать не более 4мб<br><br>';
echo '<img src="../images/img/back.gif" alt=""> <a href="backup.php?'.SID.'">Вернуться</a>';     
}
        
        
//------------------------------  Загрузка архивов -----------------------------------//
if($action=="upload"){
	
$newdown=$_FILES['file']['name'];
if (!ereg (".zip$", $newdown)){
	
echo 'Что за хрень вы пытаетесь загрузить?<br>Это не похоже на файл бэкапа!<br>';
echo '<hr><img src="../images/img/back.gif" alt=""> <a href="backup.php?action=go&amp;'.SID.'">Вернуться</a>';

}else{
if (copy($_FILES['file']['tmp_name'], "../local/databackup/".$_FILES['file']['name']))
{
chmod("../local/databackup/$newdown", 0666);
echo 'Файл с именем <b>'.$newdown.'</b> успешно загружен!<br>';
} else {
echo 'Загрузка файла не удалась!<br>';
}
echo '<br><img src="../images/img/back.gif" alt=""> <a href="backup.php?action=view&amp;'.SID.'">Обзор</a>';
 }}

        
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?error&".SID);}
} else {header ("Location: ../index.php?error&".SID);}

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