Вход Регистрация
Файл: shop/upload.php
Строк: 202
<?
require'../shaxty.php'// waphp.ru - закрытый клуб вап мастеров!
$align='left';
$title='Магазин';
$head='Магазин';
include_once (
H.'shaxty/head.php');
check_login();


function 
parseUA($s) {
    if(
preg_match('/Opera Mini/1/i'$s)) return 1;
    if(
preg_match('/Opera Mini/2/i'$s)) return 2;
    if(
preg_match('/Opera Mini/3/i'$s)) return 3;
    if(
preg_match('/Opera Mini/4/i'$s)) return 4;
}


function 
retrans($t){
$a = array('_','YA','Ya','ya','yee','YO','yo','Yo','ZH','zh','Zh','Z','z','CH','ch','Ch','SH','sh','Sh','YE','ye','Ye','YU','yu','Yu','JA','ja','Ja','A','a','B','b','V','v','G','g','D','d','E','e','I','i','J','j','K','k','L','l','M','m','N','n','O','o','P','p','R','r','S','s','T','t','U','u','F','f','H','h','W','w','x','q','Y','y','C','c','!');
$b = array(' ','Я','Я','я','ые','Ё','ё','Ё','Ж','ж','Ж','З','з','Ч','ч','Ch','Ш','ш','Ш','Э','э','Э','Ю','ю','Ю','Я','я','Я','А','а','Б','б','В','в','Г','г','Д','д','Е','е','И','и','Й','й','К','к','Л','л','М','м','Н','н','О','о','П','п','Р','р','С','с','Т','т','У','у','Ф','ф','Х','х','Щ','щ','ъ','ь','Ы','ы','Ц','ц','');
return 
str_replace($b,$a,$t);
}



function 
getExt($name) {
    return 
end(explode('.'$name));
}

function 
checkExt($name) {
    
$exts[] = 'rar';
    
$exts[] = 'zip';
    
$found false;

    foreach(
$exts as $key=>$value) {
        if(
getExt($name) == $value) {
            
$found true;
            break;
        }
    }

    if(!
$found) return false;
    else return 
true;
}

function 
checkExt2($name) {
    
$exts[] = 'jpg';
    
$exts[] = 'jpeg';
    
$exts[] = 'gif';
    
$exts[] = 'png';
    
$exts[] = 'bmp';
    
$exts[] = 'wmf';
    
$found false;

    foreach(
$exts as $key=>$value) {
        if(
getExt($name) == $value) {
            
$found true;
            break;
        }
    }

    if(!
$found) return false;
    else return 
true;
}

function 
getWithoutPath($filename) {
    return 
end(explode("/"$filename));
}

function 
p20repl($fn) {
    return 
str_replace('%20'' '$fn);
}

if(isset(
$id)){
$id2rus_lat(rus_utf_tolower(del($id)));
if (
ctype_digit($id)) $sql "and `id` = '$id'";
else if (!
ctype_digit($id)) $sql "and `name_lat` = '$id2'";
}

$cat=mysql_fetch_array(mysql_query("select * from shop_files where tip = 'cat' $sql;"));
if(
$cat['adds']!=1){
echo 
'<b>Неверная категория</b>';
echo 
$div1.'<a href="./">Магазин</a>'.$div9;
include_once (
H.'shaxty/foot.php');
}

$info mysql_fetch_assoc(mysql_query("SELECT * FROM `wm` where `id_us` = '".$user['id']."' limit 1"));
if(empty(
$info['wmid']) or empty($info['wmr']) or $info['check']==0){
echo 
'Для того чтобы добавить свой товар, нужно указать ваш <a href="/user/wm.php">WMID</a> в анкете и подтвердить его<br /><br />';
echo 
$div1.'<a href="./">Магазин</a>'.$div9;
include_once (
H.'shaxty/foot.php');
}

include_once (
'head.php');
// Выводим папки :)

$record=split("|"$cat['refer']);
$num=count($record)-1;
for (
$i=1;$i<$num;$i++){
if(
$i>=$num)break;
$adr=$record[$i];
$cat0=mysql_fetch_array(mysql_query("select * from shop_files where tip = 'cat' and `name_lat` = '$adr';"));
$put .= '&raquo;<a href="index.php?id='.$cat0['id'].'">'.$cat0['name'].'</a>';

}
if(
$cat['name'])$catn '&raquo;<a href="index.php?id='.$cat['id'].'">'.$cat['name'].'</a>';;
echo 
$div4.'<a href="./">Категории</a>'.$put.$catn.'';

echo 
'&raquo;<b>Добавление товара</b>'.$div9;

///////////////////////////////////////////////////

if (empty($act)){

echo 
' К загрузке допускаются только архивы форматов <b>.rar</b> и <b>.zip</b><br>
<b>Перед загрузкой ознакомтесь с <a href="lic.php">Соглашением</a></b><br /><br />'
;


echo 
'<form action="upload.php?act=act&amp;id='.$cat['id'].''.SID.'" method="post" enctype="multipart/form-data">';
echo 
'<label for="fuid">Загрузить файл (max. '.$set['scripts_size'].' мб)</label><br/>';
echo 
'<b>*</b>Файл:<br/>';
echo 
'<input type="file" name="userfile" /><br/>';




echo 
'<dl></dl>Добавить скрины: (jpg, jpeg, gif, png, bmp, wmf)<br>';


for (
$i 0$i 5$i++) {
echo 
'<input name="scrinfile[]" type="file">';
if(isset(
$_POST['file['.$i.']']))echo '|Код для вставки: <input name="Name" type="text" value="'.$_POST['file['.$i.']'].'">';
echo 
'<br />';
}

echo 
'<br /><b>*</b>Имя:<br/><input type="text" name="name" value="" /><br/>';
echo 
'<b>*</b>Описание:<br/><textarea cols="'.$user['pole2'].'" rows="'.$user['pole1'].'" name="about"></textarea><br/>';
echo 
'<b>*</b>Цена (10 - 5000 рублей):<br/><input type="text" name="price" value="10" size="5" /><br/>';
echo 
'<b>*</b>Количество копий в продоже: (0-неограниченно)<br/><input type="text" name="kopii" value="0" size="5" /><br/>';

echo 
'<br /><input type="submit" class="ibutton" name="send" value="Добавить" /></form><br/>';


}else{



if(isset(
$_FILES['userfile']) && $_FILES['userfile']['error'] == 0) {
if(!
checkExt($_FILES['userfile']['name'])) $err .= 'Запрещенный формат файла<br/>';

$fnames=$_FILES['userfile']['name']; //имя
$fname strtolower($_FILES['userfile']['name']);
if ((
preg_match("/.php/i"$fnames)) or (preg_match("/.pl/i"$fnames)) or ($fnames == ".htaccess")) {
$messs '[b]'.$user['user'].'[/b] пытался выгрузить в магазин файл [b]'.$fname.'[/b]';
mysql_query ("INSERT INTO logs (log,msg,time) VALUES ('shell','$messs','$time')");
$err .= 'Файлы такого типа запрещены! ';
}

$ext2 explode("."$fname);
if (
count($ext2) != 2) {
$messs '[b]'.$user['user'].'[/b] пытался выгрузить в магазин файл [b]'.$fname.'[/b]';
mysql_query ("INSERT INTO logs (log,msg,time) VALUES ('shell','$messs','$time')");
echo 
'<br />Запрещены файлы не имеющие имени, расширения, или с двойным расширением.<br />';
include_once (
H.'shaxty/foot.php');
}

if (
strlen($fname) > 30) {
echo 
'<br />Длина названия файла не должна превышать 30 символов!<br />';
include_once (
H.'shaxty/foot.php');
}
if (
eregi("[^a-z0-9.()+_-]"$fname)) {
echo 
'<br />В названии файла "<b>' $fname '</b>" присутствуют недопустимые символы.<br />';
echo 
'Разрешены только латинские символы, цифры и некоторые знаки ( .()+_- )<br />Запрещены пробелы.<br />';
include_once (
H.'shaxty/foot.php');
}


if(
$_FILES['userfile']['size'] > 1024*1024*$set['scripts_size']) {
$err .= 'Размер файла превышает '.$set['scripts_size'].' Мб.';
}


$size $_FILES['userfile']['size'];
$path rand(0000099999).del(check(retrans($_FILES['userfile']['name'])));
if(
file_exists('../tmp/temp/shop_files/'.base64_encode($path))) $err .= 'Файл уже существует';

if (empty(
$err)){
copy($_FILES['userfile']['tmp_name'], '../tmp/temp/shop_files/'.base64_encode($path));

}


} else {
$err .= 'Ошибка загрузки файла: '.$_FILES['userfile']['error'].'<br/>';
}



$about check($_POST['about']);
$name check($_POST['name']);
$price check(intval($_POST['price']));
$kopii check(intval($_POST['kopii']));

if (
$price<10)$err .= 'Товар не должен быть дешевле 10 рублей<br />';
if (
$price>5000)$err .= 'Товар не должен быть дороже 5000 рублей<br />';
//if ($kopii<1)$err .= 'Неверное число копий<br />';

if (strlen2($about)<5)$err .= 'Короткое описание!<br />';
if (
strlen2($name)<5)$err .= 'Короткое название!<br />';


if (empty(
$err)){

$refid $cat['id'];

$refer $cat['refer'].$cat['name_lat']."|";


$query mysql_query("INSERT INTO `shop_files` (`user_id`, `path`, `name`, `infolder`, `size` , `timeupload`, `about`, `price`, `kopii`, `tip`,`refid`, `refer`) VALUES ('$user[id]', '$path', '$name', '$infolder' , '$size' , '$time', '$about', '$price', '$kopii', 'file', '$refid', '$refer');");
chmod($path0644);

if (
$query){
$usid_files mysql_insert_id();


}else{ echo 
'Ошибка загрузки!';
include_once (
H.'shaxty/foot.php');
}

}else{ echo 
$err;
include_once (
H.'shaxty/foot.php');
}


///////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////

for($i=0$i<count($_FILES['scrinfile']['name']); $i++)
{

if(empty(
$_FILES['scrinfile']['name'][$i])){
continue;
}

if(!
checkExt2($_FILES['scrinfile']['name'][$i])) $err .= 'Запрещенный формат файла<br/>';

$fnames=$_FILES['scrinfile']['name'][$i]; //имя
$fname strtolower($_FILES['scrinfile']['name'][$i]);
if ((
preg_match("/.php/i"$fnames)) or (preg_match("/.pl/i"$fnames)) or ($fnames == ".htaccess")) {
$messs '[b]'.$user['user'].'[/b] пытался выгрузить в магазин файл [b]'.$fname.'[/b]';
mysql_query ("INSERT INTO logs (log,msg,time) VALUES ('shell','$messs','$time')");
$err .= 'Файлы такого типа запрещены!';
}

$ext2 explode("."$fname);
if (
count($ext2) != 2) {
$messs '[b]'.$user['user'].'[/b] пытался выгрузить в магазин файл [b]'.$fname.'[/b]';
mysql_query ("INSERT INTO logs (log,msg,time) VALUES ('shell','$messs','$time')");
echo 
'<br />Запрещены файлы не имеющие имени, расширения, или с двойным расширением.<br />';
include_once (
H.'shaxty/foot.php');
}

if (
strlen($fname) > 30) {
echo 
'<br />Длина названия файла не должна превышать 30 символов!<br />';
include_once (
H.'shaxty/foot.php');
}
if (
eregi("[^a-z0-9.()+_-]"$fname)) {
echo 
'<br />В названии файла "<b>' $fname '</b>" присутствуют недопустимые символы.<br />';
echo 
'Разрешены только латинские символы, цифры и некоторые знаки ( .()+_- )<br />Запрещены пробелы.<br />';
include_once (
H.'shaxty/foot.php');
}


if(
$_FILES['scrinfile']['size'][$i] > 1024*1024*$set['scripts_size']) {
$err .= 'Размер файла превышает '.$set['scripts_size'].' Мб.';
}


$screen rand(0000099999).del(check(retrans($_FILES['scrinfile']['name'][$i])));
if(
file_exists('files_screen/'.$screen)) $err .= 'Файл уже существует';

if (empty(
$err)){
copy($_FILES['scrinfile']['tmp_name'][$i], 'files_screen/'.$screen);

mysql_query("INSERT INTO `shop_file_screen` (`file`, `screen`) VALUES ('$usid_files', '$screen');");

}else{ echo 
$err;
include_once (
H.'shaxty/foot.php');
}

}
///////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////



header ('Location: index.php?id='.$cat['id'].'&amp;'.SID);  exit;

}



echo 
"<br/>";
echo 
$div1.'<a href="./">Магазин</a>'.$div9;
include_once (
H.'shaxty/foot.php');
?>
Онлайн: 0
Реклама