View file includes/upload_file.php

File size: 5.37Kb
<?php
header ("Content-Type: text/html; Charset=utf-8");
include("/home/kmx/includes/function.inc");
?>
<html>
<!--                                                                         -->
<head>
<!--                                                                         -->
  <title>KMX.Ru - Upload</title>
<!--                                                                         -->
</head>
<!--                                                                         -->
<body>
<!--                                                                         -->
<?php


if ($_SERVER["REQUEST_METHOD"]=="POST")
	{
	# Перебираем список файлов
	foreach ($_FILES as $mura)
	    {
	    $f = @fopen($mura["tmp_name"],"rb");
	    while ($r=@fread($f,262144))
	        {
	        $_file['name']=$mura["name"];
	        $_file['body']=$r;
	        $_file['size']=$mura["size"];
			$files[]=$_file;
	        }
	    @fclose($f);
	    }
	}

define("DBName","kmx");
define("HostName","localhost");
define("UserName","kmx");
define("Password","kmx-hosting");

$connectserv=@mysql_connect(HostName, UserName, Password);
$selectDB=@mysql_select_db(DBName);
$connect_bd=(($connectserv!=0)&&($selectDB!=0));

$_key=($HTTP_POST_VARS['keyword']+0);
$q=@mysql(DBName,"SELECT `domain` , `login` FROM `users` WHERE `key` = '".addslashes($_key)."' LIMIT 0, 1");
$data=@mysql_fetch_array($q);
$_user=$data['login'];
$_domain=$data['domain'];
if (($_user!='')&&($_key!=0))
    {
	$uploadsitespath='/home/kmx/www/sites/'.$_domain.'/'.$_user;
	echo cyr2utf("Секретный ключ верен. Файлы будут сохраняться для сайта http://".$_user.".".$_domain.".ru<br>");
    $_diskspace=@file($uploadsitespath.'/diskspace.dat');
    $limit=$_diskspace[2];
    for ($fi=0;$fi<sizeof($files);$fi++)
        {
        echo cyr2utf("Получен файл " . $mura["name"] . ", размер " . $mura["size"] . " b<br>");
        $fname=explode('.',$mura["name"]);
        $name=$fname[0];
        $ext=$fname[1];
        $chekname=(strlen(trim(strtr(str_replace(' ','*',$name),'-_()0123456789abcdefghjiklmnopqrstuvwxyz','                                        ')))==0);
        if ($chekname)
                {
                if (($ext=='jpg')||
                    ($ext=='mid')||
                    ($ext=='3gp')||
                    ($ext=='mmf')||
                    ($ext=='gif')||
                    ($ext=='mp3')||
                    ($ext=='wav')||
                    ($ext=='png')||
                    ($ext=='jar')||
                    ($ext=='jad')||
                    ($ext=='thm')||
                    ($ext=='mpn')||
                    ($ext=='amr')||
                    ($ext=='sis')||
                    ($ext=='scs')||
                    ($ext=='col')||
                    ($ext=='wbmp'))
                    {
                    if ($files[$fi]['size']>262144)
                        {
						echo cyr2utf("Сохранение НЕ удалось! Размер файла превышает допустимый размер.<br>");
                        }
                    elseif ($files[$fi]['size']<=$limit)
                        {
						if (!is_dir($uploadsitespath.'/_UPLOAD_')) {@mkdir($uploadsitespath.'/_UPLOAD_');@chmod($uploadsitespath.'/_UPLOAD_',0777);}
                        $fp = @fopen ($uploadsitespath.'/_UPLOAD_/'.$files[$fi]['name'], "w+");
                        @fwrite ($fp, $files[$fi]['body']);
                        @fclose ($fp);
                        $limit=$limit-$files[$fi]['size'];
						echo cyr2utf("Файл СОХРАНЕН в папку _UPLOAD_ сайта http://".$_user.".".$_domain.".ru.<br>");
						}
					else echo cyr2utf("Сохранение НЕ удалось! Превышен лимит свободного места (Свободно: ".$limit.", файл: ".$files[$fi]['size'].").<br>");
					}
				else echo cyr2utf("Сохранение НЕ удалось! Расширение файля не входит в список допустимых.<br>");
				}
            else echo cyr2utf("Сохранение НЕ удалось! Имя файла имеет недопустимый для конструктора формат.<br>");
        }

    $_diskspace[0]=$_diskspace[0]+0;
    $_diskspace[1]=dir_size($sitespath.$_user);
    $_diskspace[2]=$_diskspace[0]-$_diskspace[1];

	$fp = fopen ($uploadsitespath.'/diskspace.dat', "w+");
    fwrite ($fp, $_diskspace[0]."\n".$_diskspace[1]."\n".$_diskspace[2]);
    fclose ($fp);
    echo cyr2utf("Полученные данные обработаны.");
    }
elseif ($_key!='') echo cyr2utf("Секретный ключ НЕВЕРЕН. Полученные файлы утрачены.");

?>
<!--                                                                         -->
<hr>
<!--                                                                         -->
<form enctype="multipart/form-data" action="upload.php" method="post">
<!--                                                                         -->
<b>Секретный ключ:</b><input name="keyword" type="text" size="9" value="<?=$_key?>"><br>
<!--                                                                         -->
<b>Прикрепить файл:</b><input name="file" type="file" size="20"><br>
<!--                                                                         -->
<input type="submit" name="go" value="Отправить">
<!--                                                                         -->
</form>
<!--                                                                         -->
</body>
<!--                                                                         -->
</html>