Вход Регистрация
Файл: obmen/archive.php
Строк: 113
<?php
function page ($k_page 1$page 1) {

    if (isset(
$_POST['page'])) {
        
$page abs(intval($_POST['page']));
    } else {
        
$page = isset($_GET['page']) ? abs(intval($_GET['page'])) : 1;
    }
    
    if (
$page 1) {
        
$page 1;
    }
        
    if (
$page $k_page) {
        
$page $k_page;
    }
        
    return 
$page;
}

function 
k_page ($k_post 0$k_p_str 10) {
    return 
$v_pages = ($k_post != 0) ? ceil($k_post $k_p_str) : 1;
}

function 
navigation ($link null$k_page 1$page 1$hidden false) {
        
    echo (
$page '<a href="'.$link.'page.'.($page 1).'">Назад</a> ' 'Назад').' | '.($k_page $page ' <a href="'.$link.'page.'.($page 1).'">Далее</a>' 'Далее');
    
    if (
$hidden == false) {
    
        echo 
'<br/>';
            
        echo (
$page != 1) ? '<a href="'.$link.'page.1">1</a>' '[<b>1</b>]';

        for (
$i =- 3$i <= 3$i++) {
        
            if (
$page $i && $page $i $k_page) :
                    
                if (
$i ==- && $page $i 2) {
                    echo 
' <a>..</a>'
                }
                    
                echo (
$i != 0) ? ' <a href="'.$link.'page.'.($page $i).'">'.($page $i).'</a>' ' [<b>'.($page $i).'</b>]';

                if (
$i == && $page $i $k_page 1) {
                    echo 
' <a>..</a>';
                }
                    
            endif;
            
        }
        
}
}
define('ROOT','../');
define('GCMS',true);
require_once (
ROOT.'system/power.php');
$diz -> head('Просмотр архива');
$diz -> title('Просмотр архива');
$row $db -> query("SELECT TRIM(`infolder`) FROM `obmen_files` WHERE `id`='".$id."'")-> fetch_row();
if (
file_exists($row[0])) {

    
$ext pathinfo($row[0], PATHINFO_EXTENSION);
    
    if (
$ext == 'zip') {
    
        require_once(
ROOT.'system/lib/pclzip.lib.php');
        
        if (isset(
$_GET['view'])) {

            if (
strpos($_GET['view'], './') !== false || strpos($_GET['view'], '..') !== false) {
                exit;
            }

            
$zip = new PclZip($row[0]);
            
$content $zip->extract(PCLZIP_OPT_BY_NAME$_GET['view'], PCLZIP_OPT_EXTRACT_AS_STRING);
            
            
$content $content[0]['content'];
            
            
$letters = array('а''б''в''г''д''е''ё''ж''з''и''й''к''л',
            
'м''н''о''п''р''с''т''у''ф''х''ц''ч''ш''щ''ъ''ы',
            
'ь''э''ю''я''А''Б''В''Г''Д''Е''Ё''Ж''З''И''Й''К',
            
'Л''М''Н''О''П''Р''С''Т''У''Ф''Х''Ц''Ч''Ш''Щ''Ъ',
            
'Ы''Ь''Э''Ю''Я');
            
            
$utf false;
            
            for (
$b 0$b 66$b ++) {
                if (
strstr($content$letters[$b]) !== false) {
                    
$utf true;
                }
            }
            
            
$preview2 explode("rn"$content);
            
$count count($preview2);
            
            
$ext pathinfo($_GET['view'], PATHINFO_EXTENSION);
            
            if (
$ext == 'php' || $ext == 'html' || $ext == 'js' || $ext == 'sql' || $ext == 'htm' || $ext == 'wml' || $ext == 'dat' || $ext == 'txt' || $ext == 'log' || $ext == 'htaccess') {
                

                echo 
'<div class="fon">
                <b>Файл:</b> '
.basename($_GET['view']).'<br/>
                <b>Строк:</b> '
.$count.'</div>';
                
                if (
$utf) {
                    echo 
highlight_string(trim($content), true);
                } else {
                    echo 
highlight_string(iconv('windows-1251''utf-8'trim($content)));
                }
echo 
'<div class="levo"><a href="obmen/'.$id.'.archive" class="levo_tuch"> '.$diz -> img('back.png').' Назад</a></div>';
            } else {
                
header('Location: ../'.$id.'.archive');
            }
        
        } else {
        
            
$zip = new PclZip($row[0]);

            if (!
$list $zip->listContent()) {
                
error('Ошибка: '.$zip->errorInfo(true));
            }
            
            for (
$i 0$i count($list); $i ++) {
                for (
reset($list[$i]); $key key($list[$i]); next($list[$i])) {
                
                    
$zfilesize strstr($listcontent'--size');
                    
$zfilesize str_replace('--size:'''$zfilesize);
                    
$zfilesize str_replace($zfilesize$zfilesize.'|'$zfilesize);
                    
$sizelist .= $zfilesize;
                    
$listcontent "[$i]--$key:".$list[$i][$key];
                    
$zfile strstr($listcontent'--filename');
                    
$zfile str_replace('--filename:'''$zfile);
                    
$zfile str_replace($zfile$zfile.'|'$zfile);
                    
$savelist .= $zfile;
                    
                }
            }
            
            
$sizefiles2 explode('|'$sizelist);
            
            
$sizelist2 array_sum($sizefiles2);
            
            
$preview $savelist;
            
$preview explode('|'$preview);
            
            
$count count($preview) - 1;
            
            
            echo 
'<div class="fon">
            <b>Всего файлов:</b> '
.$count.'<br/>
            <b>Вес распакованного архива:</b> '
.$func ->size($sizelist2).'</div>';
            
            
$sizefiles explode('|'$sizelist);
            
$selectfile explode('|'$savelist);
            
            
$page = isset($_GET['page']) ? abs(intval($_GET['page'])) : 1;
            
            
$all ceil($count 10);
            
            
$i = ($page 10 10);
            
            if (
$count $i) {
                
$i 0;
            }
            
            
$end $i 10;
            
            if (
$count $end) {
                
$end $count;
            }
$num = isset($ya['num']) ? (int)$ya['num'] : 10;
$total intval(($count 1) / $num) + 1
if (!isset(
$_GET['page']) || !is_numeric($_GET['page']) || $_GET['page'] < )
{
$page 1;
} elseif(
$_GET['page'] > $total)
$page $total;
} else 
$page = (int)$_GET['page'];
$start $page $num $num;
            
            echo 
'<div class="fon">';
            
            for (; 
$i <= $end$i ++) {
                if (empty(
$selectfile[$i])) {
                    continue;
                }
                
                
$path $selectfile[$i];
                
                
$fname preg_replace('#.*[\/]#'''$path);
                
$zdir preg_replace('#[\/]?[^\/]*$#'''$path);
                
                
$ext pathinfo($pathPATHINFO_EXTENSION);
                
                if (
$ext == 'php' || $ext == 'html' || $ext == 'js' || $ext == 'sql' || $ext == 'htm' || $ext == 'wml' || $ext == 'dat' || $ext == 'txt' || $ext == 'log' || $ext == 'htaccess') {
                    
$msg.= $zdir.'/<a href="./'.$id.'.archive/path,'.$path.'">'.$fname.'</a>';
                } else {
                echo 
$zdir.'/'.$fname;
                }
                
                
                echo
'<br/>';
            }
            
            echo 
'</div>';
            if (
$all 1) {
            
navigation('/obmen/'.$id.'.archive'$all$page);
            }
            
    echo 
'</div>';
        }
        
    } else {
        exit;
    }

} else {
echo 
'<div class="fon"/>Файл не найден!</div>';
}
echo 
'<div class="levo"><a href="file'.$id.'" class="levo_tuch"> '.$diz -> img('back.png').' К файлу</a></div>';
echo 
'<div class="levo"><a href="/index.php" class="levo_tuch"> '.$diz -> img('home.png').' На главную</a></div>';
#####Копирайт#######
$diz -> out($msg);
?>
Онлайн: 1
Реклама