View file dounload/index.php

File size: 17.39Kb
<?php
//автор - figura
//сайт - http://f-pt.ru
include("../sistem/cfg.dat");
include("../sistem/global.dat");
include("../sistem/functions_file_system.dat");
include("../temes/$teme/verh.dat");
if(isset($_GET['dir'])){$dir = $_GET['dir'];}
if(isset($_GET['file'])){$file = $_GET['file'];}


if($status=="gost" || $status=="uzer" || $status=="moder" || $status=="admin")
{
   echo'<div class="razd"><B>ЗАГРУЗ ЦЕНТР</B></div>';
   if(empty($act)){$act="index";}
   if($act == "index")
   {
      
      if(empty($dir)){ $dir='.'; }else
      {
         $dir = str_replace("./","",$dir); 
         $dir = str_replace("..","",$dir);
         $dir = str_replace("\0","",$dir); 
         $dir = htmlspecialchars($dir);
      }
      if(file_exists($dir))//проверяем существование дериктории или файла
      {
         if(is_dir($dir))//если дериктория, то выводим её
         {
               if(file_exists("$dir/name.dat"))
               {
                  if($buff = @file("$dir/name.dat"))
                  {
                     $name_dir=$buff[0];
                     //получаем кол-во файлов в папке
                     echo'<div class="sob">'.$name_dir.'</div>';
                  }
               }
               
               $dire = @opendir ($dir);
               while ( $arr_dir = readdir ($dire))
               {
                  if(( $arr_dir != ".")
                  	  &&($arr_dir != "..")
                  	  && ($arr_dir != "name.dat")
                  	  && ($arr_dir != "Thumbs.db")
                  	  && ($arr_dir != "index.php")
                  	  && ($arr_dir != "count.dat")
                  	  && ($arr_dir != "cach.dat")
                  	  && ($arr_dir != "opisanie")
                  	  && ($arr_dir != "grafic")
                  	  && ($arr_dir != "count")
                  	  && ($arr_dir != "skr"))
                  {
                     $arr_file[] = $arr_dir;
                  }
               }
               closedir ($dire);
               
               natsort($arr_file);//сортируем по порядку
               $arr_file = array_reverse($arr_file);//перевернули масив
               $nom=count($arr_file);
               
               //$nav_dounload = "10";
               //начало новой навигации
               if(isset($_GET['nom_page']) && ($_GET['nom_page'] != "")){$nom_page = $_GET['nom_page'];}else{ $nom_page = "1"; }
               if(eregi("[^0-9]" , $nom_page )){ $nom_page = "1"; }
               $asd = $nom_page - 1;
               $i= $asd * $nav_dounload;
               $var = $i+$nav_dounload;
               if($nom < $i){ $i = 0; $var = $i+$nav_dounload; $nom_page = "1";}
               
               while($i < $var)
               {
                  if($i < $nom)
                  {
                     if(is_dir("$dir/$arr_file[$i]"))//если дериктория,
                     {
                        if($buff = @file("$dir/$arr_file[$i]/name.dat"))
                        {
                           $name_dir=$buff[0];
                           //получаем кол-во файлов в папке
                           $count_dir = scandir("$dir/$arr_file[$i]");
                           $count_dir = count($count_dir) - 3;
                        }else
                        {
                           $name_dir=$arr_file[$i];
                           //получаем кол-во файлов в папке
                           $count_dir = scandir("$dir/$arr_file[$i]");
                           $count_dir = count($count_dir) - 2;
                        }
                        echo'<div class="sob">'.$img_dir_dounload.'<a href="index.php?act=index&amp;dir='.$dir.'/'.$arr_file[$i].'&amp;'.SID.'">'.$name_dir.'</a> ('.$count_dir.')</div>';
                     }
                     
                     if(is_file("$dir/$arr_file[$i]"))//если фаил,
                     {
                        $format_file = explode(".", $dir.'/'.$arr_file[$i]);
                        $poooo = count($format_file) -1;
                        $format_file = $format_file[$poooo];
                        if($format_file == "jpg"||$format_file == "JPG"||$format_file == "jpeg"||$format_file == "JPEG"||$format_file == "gif"||$format_file == "GIF"||$format_file == "png"||$format_file == "PNG")
                        {
                            $img = '<img src="skr/skr.php?f='.$dir.'/'.$arr_file[$i].'&type=0" alt="Скриншот"><br>';
                        }
                        
                        elseif(file_exists("skr/$arr_file[$i].jpg")){$img = '<img src="skr/skr.php?f=skr/'.$arr_file[$i].'.jpg&amp;type=0" alt="Скриншот"><br>';}
                        elseif(file_exists("skr/$arr_file[$i].JPG")){$img = '<img src="skr/skr.php?f=skr/'.$arr_file[$i].'.JPG&amp;type=0" alt="Скриншот"><br>';}
                        elseif(file_exists("skr/$arr_file[$i].jpeg")){$img = '<img src="skr/skr.php?f=skr/'.$arr_file[$i].'.jpeg&amp;type=0" alt="Скриншот"><br>';}
                        elseif(file_exists("skr/$arr_file[$i].JPEG")){$img = '<img src="skr/skr.php?f=skr/'.$arr_file[$i].'.JPEG&amp;type=0" alt="Скриншот"><br>';}
                        elseif(file_exists("skr/$arr_file[$i].gif")){$img = '<img src="skr/skr.php?f=skr/'.$arr_file[$i].'.gif&amp;type=0" alt="Скриншот"><br>';}
                        elseif(file_exists("skr/$arr_file[$i].GIF")){$img = '<img src="skr/skr.php?f=skr/'.$arr_file[$i].'.GIF&amp;type=0" alt="Скриншот"><br>';}
                        elseif(file_exists("skr/$arr_file[$i].png")){$img = '<img src="skr/skr.php?f=skr/'.$arr_file[$i].'.png&amp;type=0" alt="Скриншот"><br>';}
                        elseif(file_exists("skr/$arr_file[$i].PNG")){$img = '<img src="skr/skr.php?f=skr/'.$arr_file[$i].'.PNG&amp;type=0" alt="Скриншот"><br>';}
                        else{$img = $img_file_dounload;}
                        
                        echo'<div class="ramk">';
                        echo'<div class="sob">'.$img.'<a href="index.php?act=infofile&amp;dir='.$dir.'&amp;file='.$arr_file[$i].'&amp;nom_page='.$nom_page.'&amp;'.SID.'"><B>'.$arr_file[$i].'</B></a></div>';
                        echo'Размер ('.convert_size(filesize("$dir/$arr_file[$i]")).')<br>';
                        
                        $dirr =str_replace("/","",$dir);
                        $dirr =str_replace(".","",$dirr);
                        if(file_exists("../data/dounload/count/$dirr-$arr_file[$i]-count.dat"))
                        {
                           $count_file=file("../data/dounload/count/$dirr-$arr_file[$i]-count.dat");
                           echo'Скачано ('.$count_file[0].') Раз(а).<br>';
                        }else
                        {
                           echo'Скачано (0) Раз(а).<br>';
                        }
                        echo'</div>';
                     }
                  }
                  ++$i;
               }
               
               //конец новой навигации
               $kol_page = ceil($nom / $nav_dounload); 
               
               
               //навигация вперёд, назад
               if("1" < $nom_page)
               {
                  $nom_previous_page = $nom_page - 1;
                  echo '<a href="index.php?act=index&amp;dir='.$dir.'&amp;nom_page='.$nom_previous_page.'&amp;'.SID.'">Назад</a>';
               }else{ echo 'Назад'; }
               echo'|';
               if($kol_page > $nom_page)
               {
                  $nom_next_page = $nom_page + 1;
                  echo '<a href="index.php?act=index&amp;dir='.$dir.'&amp;nom_page='.$nom_next_page.'&amp;'.SID.'">Далее</a>';
               }else{ echo 'Далее'; }
               echo'<br>';
               
               //навигация по номерам страниц
               $a = $nom_page - 3;
               $b = $nom_page +3;
               
               if($a > 1)
               {
                  echo'<a href="index.php?act=index&amp;dir='.$dir.'&amp;nom_page=1&amp;'.SID.'">1</a> ';
                  if($a > 2){ echo'... '; }
               }
               while($a <= $b)
               {
                  if(($a > 0) && ($a <= $kol_page))
                  {
                     if($nom_page == $a)
                     {
                        echo'<b>('.$a.')</b> ';
                     }else
                     {
                        echo'<a href="index.php?act=index&amp;dir='.$dir.'&amp;nom_page='.$a.'&amp;'.SID.'">'.$a.'</a> ';
                     }
                  }
                  ++$a;
               }
               if($b < $kol_page)
               {
                  if($b < ($kol_page - 1)){ echo'... '; }
                  echo'<a href="index.php?act=index&amp;dir='.$dir.'&amp;nom_page='.$kol_page.'&amp;'.SID.'">'.$kol_page.'</a> ';
               }
               ////////////////////////////////////////////////////////////////////////////////////////
               
               
               
               echo'<hr size="2" width="100%">';
               //echo'Всего '.$nom.'.<br>';
               
               $arr_link_vv=explode("/",$dir);
               $nom=count($arr_link_vv);
               $i = "-1";
               $var = $nom - 2;
               echo'<a href="index.php?act=index&amp;dir=.'; while(++$i <= $var){ echo'/'.$arr_link_vv[$i]; } echo'&amp;'.SID.'">На уровень вверх</a><br>';
               echo'<a href="index.php?act=index&amp;'.SID.'">В начало</a><br>';
               
               
         }
         
         
      }else{ echo'Файла или дериктории не существует<br>'; }
      ////////////////////////////////////////////конец////////////////////
      echo'<a href="../index.php?'.SID.'">Главная</a><br>';
   }
//...........................................................................................................................//
   if($act=='infofile')
   {
      
      $dir =str_replace("./","",$dir);
      $dir =str_replace(".","",$dir);
      $dir = str_replace("\0","",$dir);
      
      $file =str_replace("/","",$file);
      $file =str_replace("..","",$file);
      $file = str_replace("\0","",$file);
      
      $dir=htmlspecialchars($dir);
      $file=htmlspecialchars($file);
      
      
      if(isset($_GET['nom_page'])){$nom_page = $_GET['nom_page'];}else{ $nom_page = "1"; }
      if(eregi("[^0-9]" , $nom_page )){ $nom_page = "1"; }
      
         if(file_exists("$dir/$file"))
         {
            echo'<div class="ramk">';
            echo'<B>'.$file.'</B><br>';
            
            if(file_exists("skr/$file.jpg")){echo'<img src="skr/skr.php?f=skr/'.$file.'.jpg" alt="Скриншот"><br>';}
            elseif(file_exists("skr/$file.JPG")){echo'<img src="skr/skr.php?f=skr/'.$file.'.JPG" alt="Скриншот"><br>';}
            elseif(file_exists("skr/$file.jpeg")){echo'<img src="skr/skr.php?f=skr/'.$file.'.jpeg" alt="Скриншот"><br>';}
            elseif(file_exists("skr/$file.JPEG")){echo'<img src="skr/skr.php?f=skr/'.$file.'.JPEG" alt="Скриншот"><br>';}
            elseif(file_exists("skr/$file.gif")){echo'<img src="skr/skr.php?f=skr/'.$file.'.gif" alt="Скриншот"><br>';}
            elseif(file_exists("skr/$file.GIF")){echo'<img src="skr/skr.php?f=skr/'.$file.'.GIF" alt="Скриншот"><br>';}
            elseif(file_exists("skr/$file.png")){echo'<img src="skr/skr.php?f=skr/'.$file.'.png" alt="Скриншот"><br>';}
            elseif(file_exists("skr/$file.PNG")){echo'<img src="skr/skr.php?f=skr/'.$file.'.PNG" alt="Скриншот"><br>';}
            
            
            $format_file = explode(".", $file);
            $poooo = count($format_file) -1;
            $format_file = $format_file[$poooo];
            if($format_file == "jpg"||$format_file == "JPG"||$format_file == "jpeg"||$format_file == "JPEG"||$format_file == "gif"||$format_file == "GIF"||$format_file == "png"||$format_file == "PNG")
            {
               echo'<img src="skr/skr.php?f='.$dir.'/'.$file.'" alt="Скриншот"><br>';
            }
            
            
            if(file_exists("opisanie/$file.txt"))
            {
               $fi = fopen("opisanie/$file.txt","r");
               while ( $buff = fgets ($fi))
               {
                  echo ''.htmlspecialchars($buff).'<br>';//выводим строчки описания с фильтрацыей
               }
               fclose ($fi);
               
            }else
            {
               echo'Описания нет';
            }
            echo'</div>';
            echo'<hr size="2" width="100%">';
            
            if($load_file=="on")
            {
               if($status=="uzer" || $status=="moder" || $status=="admin")
               {
                  echo''.$img_down_dounload.'<a href="index.php?act=kach&amp;dir='.$dir.'&amp;file='.$file.'&amp;'.SID.'">Скачать</a> ('.convert_size(filesize("$dir/$file")).')<br>';
                  echo'<form name="forma" action="index.php" method="post"><input type="text" name="url" value="http://'.$_SERVER['HTTP_HOST'].'/dounload/'.$dir.'/'.$file.'" size="10"><br></form>';
               }
               if($status=="gost")
               {
                  echo'Скачивать файлы могут только зарегистрированные пользователи!<br>Регистрация очень проста, обычно занимает не больше минуты<br>'; 
               }
            }
            if($load_file=="oof")
            {
               if($status=="gost" || $status=="uzer" || $status=="moder" || $status=="admin")
               {
                  echo''.$img_down_dounload.'<a href="index.php?act=kach&amp;dir='.$dir.'&amp;file='.$file.'&amp;'.SID.'">Скачать</a> ('.convert_size(filesize("$dir/$file")).')<br>';
                  echo'<form name="forma" action="index.php" method="post"><input type="text" name="url" value="http://'.$_SERVER['HTTP_HOST'].'/dounload/'.$dir.'/'.$file.'" size="10"><br></form>';
               }
            }
            
            $dirr =str_replace("/","",$dir);
            $dirr =str_replace(".","",$dirr);
            if(file_exists("../data/dounload/count/$dirr-$file-count.dat"))
            {
               $count_file=file("../data/dounload/count/$dirr-$file-count.dat");
               echo'Скачано ('.$count_file[0].') Раз(а).<br>';
            }else
            {
               echo'Скачано (0) Раз(а).<br>';
            }
            
            
            echo''.$img_dir_dounload.'<a href="index.php?act=index&amp;dir='.$dir.'&amp;nom_page='.$nom_page.'&amp;'.SID.'">Назад</a><br>';
            
         }else{ echo'При проверке существования файла произошла ошибка'; }
      
   }
//...........................................................................................................................//
   if($act=='kach')
   {
      
      $dir =str_replace("./","",$dir);
      $dir =str_replace(".","",$dir);
      $dir = str_replace("\0","",$dir);
      
      $file =str_replace("/","",$file);
      $file =str_replace("..","",$file);
      $file = str_replace("\0","",$file);
      
      $dir=htmlspecialchars($dir);
      $file=htmlspecialchars($file);
      
      if(file_exists("$dir/$file"))
      {
         $dirr =str_replace("/","",$dir);
         $dirr =str_replace(".","",$dirr);
         if(file_exists("../data/dounload/count/$dirr-$file-count.dat"))
         {
            $count_file=file("../data/dounload/count/$dirr-$file-count.dat");
            
            $str = $count_file[0] + 1;//плюс 1 к количеству загрузок
            $str=htmlspecialchars($str);
            
            $file_count = fopen("../data/dounload/count/$dirr-$file-count.dat", "w+");
            flock ($file_count,LOCK_EX);
            fputs($file_count,$str);
            flock ($file_count,LOCK_UN);
            fclose($file_count);
            @chmod("../data/dounload/count/$dirr-$file-count.dat", 0666);
            
            echo'<a href="'.$dir.'/'.$file.'">Начать загрузку</a><br>';
            
         }else
         {
            $str='1';
            
            $file_count = fopen("../data/dounload/count/$dirr-$file-count.dat", "w+");
            flock ($file_count,LOCK_EX);
            fputs($file_count,$str);
            flock ($file_count,LOCK_UN);
            fclose($file_count);
            @chmod("../data/dounload/count/$dirr-$file-count.dat", 0666);
            
            echo'<a href="'.$dir.'/'.$file.'">Начать загрузку</a><br>';
            
         }
         header("Location: $dir/$file");
         
      }else
      {
         echo'Фаил не найден!';
      }
   }
   
   
   
}
if($status=="ban")
{
   echo'Вам сюда нельзя<br>';
}

include("../sistem/global_end.dat");
include("../temes/$teme/niz.dat");
?>