Вход Регистрация
Файл: mister-masterpro/zip.php
Строк: 219
<?php
    
//workul закончил в 24.07.2010 3:44
error_reporting(0);
@
header('Expires: Mon, 26 Jul 1997 05:00:00 GMT');
@
header('Last-Modified: '.gmdate('D, d M Y H:i:s').' GMT');
@
header('Cache-Control: no-cache, forua=true');
@
header('Pragma: no-cache');
@
header('Content-Type: text/html; charset=utf-8');echo '
<link rel="stylesheet" type="text/css" href="./style.css" />'
;
@require(
'./config.php');
$ref mt_rand(1000,9999);

{
$name trim(rawurldecode($_GET['name']));
$rname rawurlencode($name);
$folder trim(rawurldecode($_GET['folder']));
$rfolder rawurlencode($folder);
$pk trim(rawurldecode($_GET['pk']));
$c intval($_GET['c']);
if(
$c 1) { $c 1; }
$p intval($_GET['p']);
if(
$p 1) { $p 1; }
$res intval($_GET['res']);
@require(
'./pclzip.php');
switch(
$_GET['mod']) {
case 
'file':
$file str_replace('.|htaccess''.htaccess'trim(rawurldecode($_GET['file'])));
$rfile rawurlencode(str_replace('.htaccess''.|htaccess'$file));
echo 
'<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd"><html><head>'.
'<meta http-equiv="Content-Type" content="text/html; charset=utf-8">'.
'<title>Код файла</title>'.
'</head><body bgcolor="#B0C4DE" link="#1E90FF" text="#AFEEEE">'.
'<p align="left">'.
'<small>---<br>Файл:<br>'.str_replace('$''&#036;'htmlspecialchars($fileENT_QUOTES)).'<br>---<br>';
if(
$zip = new PclZip($name)) {
if(
$content $zip->extract(PCLZIP_OPT_BY_NAME"$file"PCLZIP_OPT_EXTRACT_AS_STRING)) {
$fl str_replace("n"" "trim($content[0]['content']));
$arr = @explode("r"$fl);
$ct count($arr);
$allp ceil($ct/ONPAGE);
if(
$c $allp) {
$c 1; }
$ot intval(ONPAGE * ($c 1));
if((
$ot 0)||($ot >= $ct)) { $ot 0; }
$do intval(ONPAGE $c);
if((
$do 1)||($do $ct)) { $do $ct; }
for(
$i $ot$i $do$i++) {
echo 
''.($i+1).'. <font color="'.CKOD.'">'.str_replace('$''&#036;'htmlspecialchars($arr[$i], ENT_QUOTES)).'</font><br>'; }
echo 
'---<br>Всего строк: '.$ct.'<br>Стр.: ';
for(
$str 1$str <= $allp$str++) {
if((
$str <> $c)&&($str $c LPAGE)&&($str == 1)) {
echo 
'<a href="'.SURL.'/?mod=file&amp;name='.$rname.'&amp;file='.$rfile.'&amp;c='.$str.'&amp;p='.$p.'&amp;ref='.$ref.'">'.$str.'</a> .. '; }
if((
$str $c)&&($str >= $c LPAGE)) {
echo 
'<a href="'.SURL.'/?mod=file&amp;name='.$rname.'&amp;file='.$rfile.'&amp;c='.$str.'&amp;p='.$p.'&amp;ref='.$ref.'">'.$str.'</a> '; }
if(
$str == $c) {
echo 
'<b><u>'.$str.'</u></b> '; }
if((
$str $c)&&($str <= $c LPAGE)) {
echo 
'<a href="'.SURL.'/?mod=file&amp;name='.$rname.'&amp;file='.$rfile.'&amp;c='.$str.'&amp;p='.$p.'&amp;ref='.$ref.'">'.$str.'</a> '; }
if((
$str <> $c)&&($str $c LPAGE)&&($str == $allp)) {
echo 
'.. <a href="'.SURL.'/?mod=file&amp;name='.$rname.'&amp;file='.$rfile.'&amp;c='.$str.'&amp;p='.$p.'&amp;ref='.$ref.'">'.$str.'</a>'; }
} } else {
echo 
'Произошла ошибка.<br>Просмотр невозможен.';
} } else {
echo 
'Произошла ошибка.<br>Просмотр невозможен.'; }
echo 
'<br>---<br><a href="'.SURL.'/?mod=view&amp;name='.$rname.'&amp;p='.$p.'&amp;ref='.$ref.'">Назад</a></small>'.
'</p></body></html>';
break;
case 
'unfiles':
$files = @array_map('trim', @array_map('rawurldecode'$_GET['files']));
$res 1;
if((
is_file($name))&&(@preg_match('~^../.*$~'$folder))) {
if(
$zip = new PclZip($name)) {
if(
$zip->extract(PCLZIP_OPT_PATH"$folder"PCLZIP_OPT_BY_NAME$files) <> 0) {
if(
is_dir($folder)) {
$res 2; } } } }
if(
$res == 1) {
@
header('Location: '.SURL.'/?mod=view&name='.$rname.'&p='.$p.'&res=1&ref='.$ref.'');
} else {
@
header('Location: '.SURL.'/?mod=view&name='.$rname.'&p='.$p.'&pk='.$rfolder.'&res=2&ref='.$ref.''); }
break;
case 
'unall':
$res 1;
if((
is_file($name))&&(@preg_match('~^../.*$~'$folder))) {
if(
$zip = new PclZip($name)) {
if(
$zip->extract(PCLZIP_OPT_PATH"$folder") <> 0) {
if(
is_dir($folder)) {
$res 3; } } } }
if(
intval($_GET['un']) == 1) {
if(
$res == 1) {
@
header('Location: '.SURL.'/?mod=menu&res=1&ref='.$ref.'');
} else {
@
header('Location: '.SURL.'/?mod=menu&name='.$rname.'&pk='.$rfolder.'&res=3&ref='.$ref.'');
} } else {
if(
$res == 1) {
@
header('Location: '.SURL.'/?mod=view&name='.$rname.'&p='.$p.'&res=1&ref='.$ref.'');
} else {
@
header('Location: '.SURL.'/?mod=view&name='.$rname.'&p='.$p.'&pk='.$rfolder.'&res=3&ref='.$ref.'');
} }
break;
case 
'arh':
$res 1;
if(@
preg_match('~^../.*[^/]+$~'$name)) {
$nm basename($name);
if(
is_dir($name) === TRUE) {
if(
$zip = new PclZip(ZDIR.'/'.$nm.'.zip')) {
if(
$zip->create("$name"PCLZIP_OPT_REMOVE_PATH"$name") <> 0) {
$res 4; } } }
elseif(
is_file($name) === TRUE) {
$fnm = @preg_replace("~([^.]*).*~m""\1"$nm);
if(
$zip = new PclZip(ZDIR.'/'.$fnm.'.zip')) {
if(
$zip->create("$name"PCLZIP_OPT_REMOVE_ALL_PATH) <> 0) {
$res 5; } } } }
if(
$res == 1) {
@
header('Location: '.SURL.'/?mod=menu&res=1&ref='.$ref.'');
} else {
@
header('Location: '.SURL.'/?mod=menu&name='.$rname.'&res='.$res.'&ref='.$ref.''); }
break;
case 
'view':
echo 
'<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd"><html><head>'.
'<meta http-equiv="Content-Type" content="text/html; charset=utf-8">'.
'<title>Просмотр</title>'.
'<style type="text/css">'.
'textarea, input { font-size: 10pt; }'.
'</style></head><body bgcolor="#B0C4DE" link="#1E90FF" text="#AFEEEE">'.
'<p align="left">'.
'<small>---<br>Архив:<br>'.str_replace('$''&#036;'htmlspecialchars($nameENT_QUOTES)).'<br>---<br>';
if(
$res == 2) {
echo 
'Файлы извлечены!<br>В папку:<br>'.str_replace('$''&#036;'htmlspecialchars($pkENT_QUOTES)).'<br>---<br>'; }
if(
$res == 3) {
echo 
'Разархивирован!<br>В папку:<br>'.str_replace('$''&#036;'htmlspecialchars($pkENT_QUOTES)).'<br>---<br>'; }
if(
$res == 1) {
echo 
'Произошла ошибка..<br>---<br>'; }
@
$zip = new PclZip($name);
if((
$list = @$zip->listContent()) == 0) {
echo 
'Произошла ошибка:<br>'.$zip->errorInfo(true).'<br>'.
'---<br><a href="'.SURL.'/?mod=menu&amp;ref='.$ref.'">Назад</a><br>'.
'</small></p></body></html>';
exit; }
$ct count($list);
$allp ceil($ct/ONPAGE);
if(
$p $allp) {
$p 1; }
$ot intval(ONPAGE * ($p 1));
if((
$ot 0)||($ot >= $ct)) { $ot 0; }
$do intval(ONPAGE $p);
if((
$do 1)||($do $ct)) { $do $ct; }
echo 
'</small></p>';
echo 
'<form action="'.SURL.'/?ref='.$ref.'" method="get">'.
'<p align="left">'.
'<input type="hidden" name="mod" value="unfiles">'.

'<input type="hidden" name="p" value="'.$p.'">'.
'<small>';
for(
$i $ot$i $do$i++) {
echo 
'<input type="checkbox" name="files[]" value="'.rawurlencode($list[$i]['filename']).'"><br>';
if(
intval($list[$i]['folder']) <> 1) {
$szco intval($list[$i]['compressed_size']);
$szde intval($list[$i]['size']);
if(
$szco 1024) {
$szc round($szco/10002).' K'; }
elseif((
$szco >= 1024)&&($szco 1048576)) {
$szc round($szco/10242).' K'; }
elseif(
$szco >= 1048576) {
$szc round($szco/1024/10242).' M'; }
else { 
$szc '-'; }
if(
$szde 1024) {
$szd round($szde/10002).' K'; }
elseif((
$szde >= 1024)&&($szde 1048576)) {
$szd round($szde/10242).' K'; }
elseif(
$szde >= 1048576) {
$szd round($szde/1024/10242).' M'; }
else { 
$szd '-'; }
echo 
'<a href="'.SURL.'/?mod=file&amp;name='.$rname.'&amp;file='.rawurlencode(str_replace('.htaccess''.|htaccess'$list[$i]['filename'])).'&amp;p='.$p.'&amp;ref='.$ref.'">'.str_replace('$''&#036;'htmlspecialchars($list[$i]['filename'], ENT_QUOTES)).'</a><br>'.
'['.$szc.'/'.$szd.']<br>';
} else {
echo 
''.str_replace('$''&#036;'htmlspecialchars($list[$i]['filename'], ENT_QUOTES)).'<br>'.
'[-FOLDER-]<br>'; } }
echo 
'---<br>Всего файлов: '.$ct.'<br>Стр.: ';
for(
$str 1$str <= $allp$str++) {
if((
$str <> $p)&&($str $p LPAGE)&&($str == 1)) {
echo 
'<a href="'.SURL.'/?mod=view&amp;name='.$rname.'&amp;p='.$str.'&amp;ref='.$ref.'">'.$str.'</a> .. '; }
if((
$str $p)&&($str >= $p LPAGE)) {
echo 
'<a href="'.SURL.'/?mod=view&amp;name='.$rname.'&amp;p='.$str.'&amp;ref='.$ref.'">'.$str.'</a> '; }
if(
$str == $p) {
echo 
'<b><u>'.$str.'</u></b> '; }
if((
$str $p)&&($str <= $p LPAGE)) {
echo 
'<a href="'.SURL.'/?mod=view&amp;name='.$rname.'&amp;p='.$str.'&amp;ref='.$ref.'">'.$str.'</a> '; }
if((
$str <> $p)&&($str $p LPAGE)&&($str == $allp)) {
echo 
'.. <a href="'.SURL.'/?mod=view&amp;name='.$rname.'&amp;p='.$str.'&amp;ref='.$ref.'">'.$str.'</a>'; }
}
echo 
'<br>---</small></p>'.
'<p align="left" style="background-color: '.FORMS.'">'.
'<small><u>Извлечь файлы в</u>:</small><br>'.
'<textarea name="folder" title="Папка" cols="20" rows="4">../</textarea>'.
'<input type="hidden" name="name" value="'.$rname.'">'.
'<input type="submit" value="Выполнить!">'.
'</p></form>'.
'<form action="'.SURL.'/?ref='.$ref.'" method="get">'.
'<p align="left" style="background-color: '.FORMS.'">'.
'<input type="hidden" name="mod" value="unall">'.

'<input type="hidden" name="p" value="'.$p.'">'.
'<small>---<br><u>Разархивировать в</u>:</small><br>'.
'<textarea name="folder" title="Папка" cols="20" rows="4">../</textarea>'.
'<input type="hidden" name="name" value="'.$rname.'">'.
'<input type="submit" value="Выполнить!">'.
'</p></form>'.
'<p align="left">'.
'<small>---<br><a href="'.SURL.'/?mod=menu&amp;ref='.$ref.'">Меню</a><br>'.
'---<br><a href="'.MYSITE.'">'.NASITE.'</a></small>'.
'</p></body></html>';
break;
default:
echo 
'<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd"><html><head>'.
'<meta http-equiv="Content-Type" content="text/html; charset=utf-8">'.
'<title>Меню</title>'.
'<style type="text/css">'.
'textarea, input, select { font-size: 10pt; }'.
'</style></head><body bgcolor="#B0C4DE" link="#1E90FF" text="#AFEEEE">';
if((
$res >= 1)&&($res <= 5)&&($res <> 2)) {
echo 
'<p align="left"><small>---<br>';
if(
$res == 3) {
echo 
'Архив:<br>'.str_replace('$''&#036;'htmlspecialchars($nameENT_QUOTES)).'<br>разархивирован<br>в папку:<br>'.str_replace('$''&#036;'htmlspecialchars($pkENT_QUOTES)).'<br>'; }
if(
$res == 4) {
echo 
'Папка:<br>'.str_replace('$''&#036;'htmlspecialchars($nameENT_QUOTES)).'<br>архивирована!<br>'; }
if(
$res == 5) {
echo 
'Файл:<br>'.str_replace('$''&#036;'htmlspecialchars($nameENT_QUOTES)).'<br>архивирован!<br>'; }
if(
$res == 1) {
echo 
'Произошла ошибка..<br>'; }
echo 
'</small></p>';
}
echo 
'<form action="'.SURL.'/?ref='.$ref.'" method="get">'.
'<p align="left" style="background-color: '.FORMS.'">'.
'<small>---<br><u>Относительный путь АРХИВ</u>:</small><br>'.
'<textarea name="name" title="Путь" cols="20" rows="4">../</textarea><br>'.
'<small><u>Разархивировать в ПАПКА</u>:</small><br>'.
'<textarea name="folder" title="Папка" cols="20" rows="4">../</textarea><br>'.
'<small><u>Режим</u>:</small><br>'.
'<select name="mod">'.
'<option value="view" selected>Просмотр архива</option>'.
'<option value="unall">Разархивация</option>'.
'<option value="arh">Архивация</option>'.
'</select><br>'.

'<input type="hidden" name="un" value="1">'.
'<input type="submit" value="Выполнить!">'.
'</p></form>';
echo 
'<p align="left">'.
'<small>---<br><a href="'.MYSITE.'">'.NASITE.'</a></small>'.
'</p></body></html>';
break; } }
?>
Онлайн: 0
Реклама