Файл: shared_zone/upload.php
Строк: 103
<?
include('../core/core.php');
include(MAINDIR.'style/head.php');
$id = abs(intval($_GET['id']));
if(is_user()){
title('Загрузка файла');
echo'<div class="title">Загрузка файла</div>';
$my = DB::run() -> queryFetch("SELECT * FROM `users` WHERE `login`=? LIMIT 1",array(check($_COOKIE['login'])));
switch ($mode):
case 'index':
$set = DB::run() -> queryFetch("SELECT * FROM `setting` WHERE `id`=? LIMIT 1",array(1));
if(is_admin() || $my['level'] >= 1){
echo'<div class="menu"><form enctype="multipart/form-data" action="?mode=upload&id='.$id.'" method="post">
Выгрузить файл <small>(<font color="red">max </font>'.$set['upload'].' mb.)</small>:<br />
<input name="filename" type="file" /><br />
Cкриншот: (не обязательно. не более 1 мб.)<br />
<input name="filescrin" type="file" /><br />
Описание: (<a href="/pages/smiles.php">смайлы</a>)<br />
<textarea name="about" rows="5" cols="30"></textarea><br />
Комментарии:<br />
<select name="comments">
<option value="on">Разрешены</option>
<option value="off">Запрещены</option>
</select><br />
<input type="submit" name="submit" value="Добавить" />
</form>';
} else {echo'<div class="menu">Для загрузки файла вам необходим 1 уровень!';}
echo'</div>';
break;
case 'upload':
echo'<div class="menu">';
$comments =check($_POST['comments']);
$about = check($_POST['about']);
$file = check($_FILES['filename']['name']);
if (!empty($comments) && !empty($about) && !empty($file)){
if($file == '.htaccess' || $file == 'htaccess'){echo'FACK YOU';exit;} else {
if (file_exists($file)) { echo'Файл  уже существует! Придумайте другое имя файла!'; } else { 
if (mb_strlen($about) >= 5 && mb_strlen($about) < 500) {
if (mb_strlen($file) < 150) {
#Дира для загруженных файлов  
$uploaddir = '../obmen/files';  
#Разрешённые типы файлов (через запятую)  
$types = 'htaccess';
#Максимальный размер файла (в mb)
$maxsize = 1024 * UPLOAD; 
$uper = DB::run() -> queryFetch("SELECT * FROM files ORDER BY `id` DESC LIMIT 1");
$tuupp = basename($_FILES['filename']['type']); 
$siize = basename($_FILES['filename']['size']); 
if(!empty($_FILES)){  
    $maytypes = explode(',', str_replace(' ', '', $types));  
    foreach($maytypes as $maytype){  
if(stristr($_FILES['filename']['name'], $maytype)){    
           $may = 0;     
        }else{    
           $may = 1;    
        }  
    } 
    if($may){  
        if($_FILES['filename']['size'] <= $maxsize*1024){  
            $dir = './'.$uploaddir.'/'.check($_FILES['filename']['name']);  
            if(copy($_FILES['filename']['tmp_name'], $dir)){  
                header("Location: /".($uper['id'] + 1)."/");
            }else{  
                echo '<div class="podkat">Возникли ошибки при загрузке файла</div>';  
            }  
        }else{  
            echo 'Размер файла превышает '.$maxsize.' килобайт';  
        }  
    }else{  
        echo '<div class="podkat">Тип файла входит в состав запрещенных</div>Файл был заблокирован системой безопастности!</div>';
    }  
}
//////////  Расчитываем обьем файла в кб /////////////
$a = $siize / 1024;
$otvet = round($a, 2);
////////////////////////
$data = times();
$time = time() + (86400 * 30);
$type = explode('.',$file);
$exfile = $type[count($type) - 1];
$exfile = regist($exfile);
//-------//
$files = check($_FILES['filescrin']['name']);
$siz = basename($_FILES['filescrin']['size']); 
if($exfile == 'jpg' || $exfile == 'png' || $exfile == 'jpeg' || $exfile == 'gif'){} else {
$types = explode('.',$files);
$exfiles = $types[count($types) - 1];
$exfiles = regist($exfiles);
$a = $siize / 1024;
$otvet = round($a, 2);
if($exfiles == 'gif' || $exfiles == 'jpg' || $exfiles == 'jpeg' || $exfiles == 'png'){
if($otvet > 1024){} else {
if(is_uploaded_file($_FILES["filescrin"]["tmp_name"]))
{
move_uploaded_file($_FILES["filescrin"]["tmp_name"], "../obmen/files_img/".$_FILES["filename"]["name"].".png");
} else {echo("Ошибка загрузки файла");}
}
}
}
//-----------//
$read = explode(",", file_get_contents( '../modul/other2.txt')); 
$i = 0; 
$type = $exfile; 
foreach($read  as $value){ 
 if(trim($value) == $type) $i++; 
} 
if($i != 0){} else {
    $file = fopen ("../modul/otver.txt","a+");
  $str = ",$exfile";
  if ( !$file )
  {
    echo("Ошибка открытия файла");
  }
  else
  {
    fputs ( $file, $str);
  }
  fclose ($file);
}
$about = no_br($about);
$about = antimat($about);
$about = smiles($about);
// -- KOMMET  STATUS-- //
DB::run() -> query("INSERT INTO `files_com_status`(`file`, `status`) VALUES (?,?)",array($file,$comments));
// -- FILES STATUS-- //
$link = "<a href=/".($uper['id'] + 1)."/>".$file."</a> [".$otvet." Кб]";
DB::run() -> query("INSERT INTO `files`(`id`,`name`, `last`, `kb`, `data`, `link`, `login`, `type`, `opi`, `count`, `time`,`plus`,`minus`,`id_obmen`) VALUES (?,?,?,?,?,?,?,?,?,?,?,?,?,?)",array(($uper['id'] + 1),$file,$data,$otvet,$data,$link,check($_COOKIE['login']),$exfile,$about,0,$time,0,0,$id));
//------- 2 --------//
DB::run() -> query("INSERT INTO `files_my`(`link`, `login`) VALUES  (?,?)",array($link,check($_COOKIE['login'])));
//------- 3 --------//
DB::run() -> query("INSERT INTO `files_rat`(`file`, `login`) VALUES (?,?)",array($file,check($_COOKIE['login'])));
} else { echo'Ошибка! Слишком длинное название файла!'; }
} else { echo'Ошибка! Слишком длинное или короткое описание!'; }
}
}
} else {echo'Все поля обязятельны к заполнению!';}
echo'</div>';
break;
default: 
header ('location: ?mode=index'); 
endswitch;
} else {
title('Ошибка!');
echo'<div class="title">Ошибка!</div>';
echo'<div class="error">';
echo'Доступ разрешен только авторизованым!';
echo'</div>';
}
include(MAINDIR.'style/foot.php');
?>