Вход Регистрация
Файл: profi_wm/fo/up.php
Строк: 97
<?php
function getExt($name){
return 
end(explode('.'$name));
}
include 
'../system/core.php';
include 
'../system/header.php';

$id abs(intval($_GET['id']));
$praz mysql_fetch_assoc(mysql_query("SELECT * FROM `fo_pr` WHERE `id` = '$id' LIMIT 1"));
if(empty(
$praz['id'])){
header('location:/');
exit();
}
$raz mysql_fetch_assoc(mysql_query("SELECT * FROM `fo_r` WHERE `id` = '$praz[id_r]' LIMIT 1"));
$_title 'Загрузка файла';
if(
$_POST['imp']==0){
if(isset(
$_POST['ok'])){
$name TextGuard($_POST['name']);
$about TextGuard($_POST['about']);
if(empty(
$name) or strlen($name)>100){$err 'Что-то с названием файла! Или оно слишком длинное, или вы вообще его не ввели!';}
if(empty(
$about)){$err 'Вы не ввели описание файла!';}
if(
$_FILES['file']['size'] > 1024*60*1024){$err 'Размер файла превышает 60 мб.!';}
if(
mysql_result(mysql_query("SELECT COUNT(id) FROM `fo` WHERE `name` = '$name'"),0)==1){
$err 'Такой файл уже есть!';}
$file $_FILES['file']['name'];
$ext strtolower(strrchr($file'.'));
$file 'file_'.rand(1000,9999).$ext;
$type_upload getExt($file);
$tp explode(',',$raz['type']);
$cc count($tp);
$type_no_error false;
for(
$i=0;$i<$cc;$i++){
if(
$type_upload==$tp[$i]) $type_no_error true;
}
if(!
$type_no_error$err 'Запрещенный формат файла!';
/*if(preg_match('/(.php|.pl|.phpb|.htmlb|.htmb|.phtmb|.inib|.perlb|.htaccess)/i', $file)){
$err .= 'Запрещенный формат файла!';}*/
if(!isset($err)){
$uploaddir 'files/'.$file;
if(
copy($_FILES['file']['tmp_name'], $_SERVER['DOCUMENT_ROOT'].'/fo/'.$uploaddir)){
mysql_query("INSERT INTO `fo` SET `id_r` = '$raz[id]', `id_pr` = '$praz[id]', `time` = '".time()."', `last` = '".time()."', `name` = '$name', `value` = '$about', `file` = '$uploaddir', `user_id` = '$user[id]'");
mysql_query("UPDATE user SET rub = rub + '$money_fo' WHERE id = '$user[id]' LIMIT 1");
header('location: file.php?id='.mysql_insert_id());}
}
}
}else{
function 
getWithoutPath($filename){
return 
end(explode("/"$filename));
}
function 
p20repl($fn){
return 
str_replace('%20'' '$fn);
}
if(
$_POST['import'] == ''){
$err .= 'Вы не ввели ссылку на файл!';
}
$f = @fopen($_POST['import'], 'r');
if(!
$f){
$err .= 'Файл по ссылке <b>'.TextGuard($_POST['import']).'</b> недоступен.</b>';
}
$parametr explode('#',trim($_POST['import']));
if(!isset(
$parametr[1])) $parametr[1] = basename(trim($parametr[0]));
$ex pathinfo(trim($parametr[0]));
$ext strtolower($ex['extension']);
$fname $parametr[1];
$fnames=$parametr[1]; //имя
/*if(preg_match('/(.php|.pl|.phpb|.htmlb|.htmb|.phtmb|.inib|.perlb|.htaccess)/i', $fnames)){
$err .= 'Файлы такого типа запрещены!';
}*/
$type_upload getExt($fname);
$tp explode(',',$raz['type']);
$cc count($tp);
$type_no_error false;
for(
$i=0;$i<$cc;$i++){
if(
$type_upload==$tp[$i]) $type_no_error true;
}
if(!
$type_no_error$err 'Запрещенный формат файла!';
$ext2 explode("."$fname);
/*if (count($ext2) != 2) {
$err = 'Запрещены файлы не имеющие имени, расширения, или с двойным расширением.';
}
*/
if(strlen($fname)>250){
$err 'Длина названия файла не должна превышать 250 символов!';
}
if (
preg_match("/[^a-z0-9.()+_-]/i"$fname)){
$err '<br />В названии файла "<b>'.$fname.'</b>" присутствуют недопустимые символы.<br />Разрешены только латинские символы, цифры и некоторые знаки ( .()+_- )<br />Запрещены пробелы.';
}
while(
$c fread($f1024)) $filedata .= $c;
if(
strlen($filedata) > 1024*1024*30){
$err .= 'Размер файла превышает <b>30 Мб</b>.';
}
$FileName 'files/file_'.rand(1000,9999).'.'.$ext;
$adres $FileName;
fclose($f);
$_POST['import'] = p20repl($_POST['import']);
file_put_contents($_SERVER['DOCUMENT_ROOT'].'/fo/'.$adres$filedata);
$name TextGuard($_POST['name']);
$about TextGuard($_POST['about']);
if(empty(
$name) or strlen($name)>100){$err 'Что-то с названием файла! Или оно слишком длинное, или вы вообще его не ввели!';}
if(
mysql_result(mysql_query("SELECT COUNT(id) FROM `fo` WHERE `name` = '$name'"),0)==1){
$err 'Такой файл уже есть!';}
if(empty(
$about)){$err 'Вы не ввели описание файла!';}
if(!isset(
$err)){
mysql_query("INSERT INTO `fo` SET `id_r` = '$raz[id]', `id_pr` = '$praz[id]', `time` = '".time()."', `last` = '".time()."', `name` = '$name', `value` = '$about', `file` = '$adres', `user_id` = '$user[id]'");
mysql_query("UPDATE user SET rub = rub + '$money_fo' WHERE id = '$user[id]' LIMIT 1");
header('location: file.php?id='.mysql_insert_id());}
}
error($err);
echo 
'<div class="post2">Доступные форматы для загрузки: <b><font color="red">'.$raz['type'].'</font></b><br/><br/><form action="up.php?id='.$id.'" method="post" enctype="multipart/form-data">* Название:<br/><input type="text" name="name"/><br/>* Описание:<br/><textarea name="about"></textarea><br/>
Файл:<br/><input type="file" name="file"/><br/>
<input type="radio" name="imp" value="1"> Импорт<br/>Ссылка для импорта:<br/>
<input type="text" value="http://" name="import"/><br/>
<input type="submit" name="ok" value="Загрузить"/></form></div>'
;
echo 
'<div class="post1"><img src="ext/dir.gif" alt="*"/> <a href="/fo">Обменник</a> / <a href="/fo/pr.php?id='.$raz['id'].'">'.$raz['name'].'</a> / <a href="/fo/files.php?id='.$praz['id'].'">'.$praz['name'].'</a></div>';
include 
'../system/footer.php';
?>
Онлайн: 2
Реклама