Вход Регистрация
Файл: fo/load.php
Строк: 131
<?php

require '../system/sid.php';
require 
'../system/config.php';
include 
'../system/user.php';

whorm(0'fo');

include 
'../system/head.php';

$r my_int($_REQUEST['r']);

$zip = new ZipArchive;

echo 
$div_title 'Зона обмена' $div_end .
     
$div_menu '
     <img src="../ico/up.gif" alt=""/> <b>Зона обмена</b>
     ' 
$block '
     <a href="search.php?">Поиск</a><br/>
     <a href="pop.php?">Популярные</a> |
     <a href="new.php?">Новые</a>
     ' 
$div_end;

    
$em mysql_query("SELECT * FROM fo_cat WHERE id = '$r' LIMIT 1");
    if (
mysql_num_rows($em) == false)
    {
        
err('Раздел не найден!');
        include 
'../system/foot.php';
         exit();
    }

   
//--------------------//
   
$sets mysql_fetch_array(mysql_query("SELECT `fo_limit`, `fo_moder`, `fo_size` FROM `setting` WHERE `ids` = '1'"));
   
$_mod = ($sets[1] == 1) ? '<br/>Файл будет доступен после проверки Администратором.' '';
   
//--------------------//

   
if (isset($_GET['ok'])) msg('Файл был успешно загружен!' $_mod);

   if (isset(
$_POST['up'])) {
      
$folder check($_POST['folder']);
      
$parol my_int($_POST['parol']);
      
$upl my_int($_POST['upl']);
      
$name trim(mysql_real_escape_string(check($_POST['name'])));
      
$opis trim(mysql_real_escape_string(check($_POST['opis'])));
      if (isset(
$_POST['url'])) $url htmlentities($_POST['url']);

if (
$upl == 1)
{
      
$FileName $_FILES['object']['name'];
      
$FileSize $_FILES['object']['size'];
      
$ScreenName $_FILES['screen']['name'];
      
$ScreenSize $_FILES['screen']['size'];

      
$archive = array('.zip''.rar''.tar''.cab''.gz''.gzip');
      
$frm = array('.jpg''.jpeg''.gif''.png');

         
$ext mb_strtolower(strrchr($FileName'.'), 'UTF8');
         
$scr mb_strtolower(strrchr($ScreenName'.'), 'UTF8');

         if (
$FileSize > (1024 GetSize($sets[0]) * 1024))
         {
            
err('Размер файла не должен быть более ' get_size($sets[0]) . '!');
         }
         elseif ((
$sets[2] - $user['fo_size']) < $FileSize)
         {
             
err('У Вас не осталось свободного места!');
         }
         elseif (empty(
$folder))
         {
            
err('Не выбрана папка для загрузки!');
         }
         elseif (empty(
$FileName))
         {
            
err('Не выбран файл!');
         }
         elseif (
preg_match('/(.php|.pl|.htaccess)/i'$FileName) || !in_array($ext$archive))
         {
            
err('Файл не является архивом!');
         }
         elseif (!empty(
$ScreenName) && $ScreenSize > (1024 500))
         {
            
err('Размер скриншота не должен быть более 500 Kb!');
         }
         elseif (!empty(
$ScreenName) && preg_match('/(.php|.pl|.htaccess)/i'$ScreenName) || !empty($ScreenName) && !in_array($scr$frm))
         {
            
err('Скриншот не является изображением!');
         }
         else
         {

            if (
$zip->open($_FILES['object']['tmp_name']) === TRUE)
            {
                
$zip->setArchiveComment($site ' - best collection of scripts.');
                
$zip->addFromString('ReadMe_'.$site.'.txt''Cкрипт скачан с сайта http://' $site ' заходите еще :)');
                
$zip->close();
            }

            
$NameFile 'files/archive/' mt_rand(1000099999) . '_' strtoupper($site) . '_' mt_rand(1000099999) . $ext;
            
copy($_FILES['object']['tmp_name'], $NameFile);
            
$nazvanie = (empty($name)) ? $FileName $name;

            if (!empty(
$ScreenName))
            {
                
$ScreenFile 'files/screen/' mt_rand(1000099999) . '_' strtoupper($site) . '_' $ScreenName;
                
copy($_FILES['screen']['tmp_name'], $ScreenFile);
                
$scrsql ", `screen` = '$ScreenFile'";
            }

              
mysql_query("INSERT INTO `fo_files` SET
                           `url` = '
$NameFile',
                           `time` = '" 
time() . "',
                           `author` = '
$user[id]',
                           `title` = '
$nazvanie',
                           `info` = '
$opis',
                           `parol` = '
$parol',
                           `rid` = '
$r',
                           `cat` = '
$folder',
                           `moder` = '
$sets[1]'
                           
$scrsql");

              
mysql_query("UPDATE users SET `fo_size` = `fo_size` + '$FileSize', activity = activity + '0.01' WHERE id = '$user[id]' LIMIT 1");

              
header('Location: load-'.$r.'&ok');
        }
    } elseif (
$upl == 2) {
        
$ScreenName $_FILES['screen']['name'];
          
$ScreenSize $_FILES['screen']['size'];
        
$file getWithOutPath($url);
        
$format mb_strtolower(strrchr($file'.'), 'UTF8');
        
$scr mb_strtolower(strrchr($ScreenName'.'), 'UTF8');
        
$ext = array('.zip''.rar''.gz''.gzip''.tar''.cab');
        
$frm = array('.jpg''.jpeg''.gif''.png');
        
$f = @fopen($url'r');
        while(
$c = @fread($f1024)) $filedata .= $c;

        if (!
$f)
        {
            
err('Ошибка импортирования файла!');
        }
        elseif (
preg_match('/(.php|.pl|.htaccess)/i'$file) || !in_array($format$ext))
        {
            
err('Файл не является архивом!');
        }
        elseif (
strlen($filedata) > (1024 GetSize($sets[0]) * 1024))
        {
            
err('Размер файла не должен быть более ' get_size($sets[0]) . '!');
        }
        elseif (!empty(
$ScreenName) && $ScreenSize > (1024 500))
        {
           
err('Размер скриншота не должен быть более 500 Kb!');
        }
        elseif (!empty(
$ScreenName) && preg_match('/(.php|.pl|.htaccess)/i'$ScreenName) || !empty($ScreenName) && !in_array($scr$frm))
        {
           
err('Скриншот не является изображением!');
        }
        elseif ((
$sets[2] - $user['fo_size']) < strlen($filedata))
        {
             
err('У Вас не осталось свободного места!');
        } else {

            
mkdir('extract'0777);
            
copy($url'extract/' $file);
            if (
$zip->open('extract/' $file) === TRUE)
            {
                
$zip->setArchiveComment($site ' - best collection of scripts.');
                
$zip->addFromString('ReadMe_' $site '.txt''Cкрипт скачан с сайта http://' $site ' заходите еще :)');
                
$zip->close();
            }

            if (!empty(
$ScreenName))
            {
                
$ScreenFile 'files/screen/' mt_rand(1000099999) . '_' strtoupper($site) . '_' $ScreenName;
                
copy($_FILES['screen']['tmp_name'], $ScreenFile);
                
$scrsql ", `screen` = '$ScreenFile'";
            }

            
$NameFile 'files/archive/' mt_rand(1000099999) . '_' strtoupper($site) . '_' $file;
            
copy('extract/' $file$NameFile);
            
removeDir('extract');
            
$nazvanie = (empty($name)) ? $file $name;
            
mysql_query("INSERT INTO `fo_files` SET
                           `url` = '
$NameFile',
                           `time` = '" 
time() . "',
                           `author` = '
$user[id]',
                           `title` = '
$nazvanie',
                           `info` = '
$opis',
                           `parol` = '
$parol',
                           `rid` = '
$r',
                           `cat` = '
$folder',
                           `moder` = '
$sets[1]'
                           
$scrsql");
            
mysql_query("UPDATE users SET `fo_size` = `fo_size` + '" strlen($filedata) . "' WHERE id = '$user[id]' LIMIT 1");
              
header('Location: load-'.$r.'&ok');
        }
     }
   }

    echo 
'<FORM action="load.php" method="POST" ENCTYPE="multipart/form-data">
          <label>Загружено ' 
get_size($user['fo_size']) . ' из ' get_size($sets[2]) . '</label><br/>
          <label>Выбрать файл: <small>(*max: ' 
get_size($sets[0]) . ')</small></label><br/>
          <input type="file" name="object"/>
          <br/>
          <label>Импорт файла:</label><br/>
          <input type="text" name="url" value="http://"/>
          <br/>
          <label>Скриншот: <small>(*max: 500 Kb)</small></label><br/>
          <input type="file" name="screen"/>
          <br/>
          <label>Название файла:</label><br/>
          <input type="text" name="name"/>
          <br/>
          <label>Описание файла:</label><br/>
          <textarea name="opis" cols="50" rows="5" style="width: 99%"></textarea>
          <br/>
          <label>Пароль(можна оставить пустым):</label><br/>
          <input type="password" name="parol"/>
          <br/>
          <label>В папку:</label>
          <br/>
          <select name="folder">'
;

    
$lists mysql_query("SELECT * FROM fo_pod WHERE cid = '$r'");
    echo 
'<option value="0">-Не выбрано-</option>';
    while(
$A mysql_fetch_assoc($lists))
    {
        echo 
'<option value="'.$A['id'].'">' $A['title'] . '</option>';
    }

    echo 
'</select>
          <br/>
          <input type="radio" name="upl" checked value="1"/> Обычная загрузка
          <input type="radio" name="upl" value="2"/> Импорт
          <br/>
          <input type="hidden" name="r" value="'
.$r.'"/>
          <input type="submit" name="up" value="Загрузить"/>
          </FORM>'
;

include 
'../system/foot.php';
?>
Онлайн: 2
Реклама