Файл: www/app/upload.php
Строк: 283
<?
include '../config.php';
include 'functions.php';
$admin=admin();
$moder=mod_fj();
if(!$admin and !$moder){
div('Ошибка');
echo 'Извините! Но к этой странице вам доступ запрещен';
}else{
div('Загрузка файла');
if (!isset($_GET['act'])) {
if (isset($_GET['id']) && is_numeric($_GET['id'])) {
$dir_id=intval($_GET['id']);
$q=mysql_query("SELECT * FROM `app_categorys` WHERE `id`=$dir_id");
$dir=mysql_fetch_array($q);
if (!$dir) {
echo "Выбранной Вами категории не существует";
}
else {
echo "<b>Загрузить файл (категория <font color=red>$dir[name]</font>)</b><br>";
echo "<form action=?act=process method=post enctype=multipart/form-data>";
echo "Название:<br/>n";
echo "<input type=text name=name><br/>n";
echo "Производитель:<br/>n";
$ven=mysql_query("SELECT * FROM `vendors` ORDER BY `name` ASC");
echo "<select name=vendor>";
while ($v = mysql_fetch_array($ven))
{
echo "<option value=$v[id]>$v[name]";
}
echo "</select><br>";
echo "<input type=hidden name=id_dir value=$dir[id]><br/>n";
echo "Описание:<br/>Перенос строки используйте [br](Обязательно)<br/>n";
echo "<textarea name=descr rows=8 cols=26></textarea><br/>n";
echo "Адрес скриншота:<br/>n";
echo "<input type=text name=screenurl><br/>n";
echo "или выгрузить скриншот:<br/>n";
echo "<input type="file" name="screenfile"/><br/>n";
echo "Выгружать <input type=text name=num style="-wap-input-format:'5N'" size="2" value="1"/> файлов<br/>";
echo "способом <input type=radio name=method value=import checked=checked>импорт | <input type=radio name=method value=upload>выгрузка<br/>n";
echo "<input type=submit name=send value=Вперед></form>n";
}
}
else {
echo "Ошибка<br>Выбранной Вами категории не существует";
}
}
if ($_GET['act']==process) {
if (!isset($_POST['send'])) {
echo "Внимание<br>Нельзя вручную обходить форму";
}
else {
$na=mysql_result(mysql_query("SELECT COUNT(*) FROM `app_games` WHERE `name`='$_POST[name]'"),0);
if ($na!=0) {
echo "Внимание!<br>Произошла ошибка<br>Файл с таким названием уже есть в базе";
include_once '../sys/inc/tfoot.php';
exit;
}
if (empty($_POST['name'])) {
echo "Внимание!<br>Произошла ошибка<br>Введите название";
include_once '../sys/inc/tfoot.php';
exit;
}
echo '<b>Загружаем приложение</b><br>';
// подгружаем скриншот
$md5 = md5 ( time () . microtime () );
//$md5=md5( time ());
if ( empty ( $_FILES['screenfile']['error'] ) )
{
$fname = $_FILES['screenfile']['name'];
$et = explode ( '.', $fname );
$rex = strtolower ( $et[count($et) - 1] ); # Расширение файла
$scr_name = "$md5.$rex";
move_uploaded_file ( $_FILES['screenfile']['tmp_name'], 'tmp/tmp.' . $rex );
markImage ( 'tmp/tmp.' . $rex, 'tmp/' . $scr_name);
@unlink( 'tmp/tmp.' . $rex );
echo "Скриншот:<br/><img src="tmp/$scr_name" alt="-"/><br/>n";
}
elseif ( !empty( $_POST['screenurl'] ) )
{
$et = explode ( '.', $_POST['screenurl'] );
$rex = strtolower ( $et[count($et) - 1] ); # Расширение файла
copy ( $_POST['screenurl'], 'tmp/tmp.' . $rex );
markImage ( 'tmp/tmp.' . $rex, 'tmp/' . $scr_name);
@unlink( 'tmp/tmp.' . $rex );
echo "Скриншот:<br/><img src="tmp/$scr_name" alt="-"/><br/>n";
}
else {
echo "Скриншот не загружен..";
include_once '../sys/inc/tfoot.php';
exit;
}
if ( $_POST['method'] == 'import' )
{
echo "<form method=post action=?act=uf>n";
for ( $i = 1; $i <= $_POST['num']; $i++ )
{
echo "<b>Файл " . $i . ":</b><br/>n";
echo "Экран:<select name="descr" . $i . ""/><br/>n";
$display=mysql_query("SELECT * FROM `display` ORDER BY `name` ASC");
while ($c = mysql_fetch_array($display))
{
echo "<option value=$c[id]>$c[name]";
}
echo "</select><br>";
echo "Платформа:<select name="plat" . $i . ""/><br/>n";
$platform=mysql_query("SELECT * FROM `platform` ORDER BY `name` ASC");
while ($p = mysql_fetch_array($platform))
{
echo "<option value=$p[id]>$p[name]";
}
echo "</select><br>";
echo "Язык: <select name="lang" . $i . ""/><br/>n";
$lang=mysql_query("SELECT * FROM `language` ORDER BY `id` ASC");
while ($l = mysql_fetch_array($lang))
{
echo "<option value=$l[id]>$l[name]";
}
echo "</select><br>";
echo "Версия (не обязательно):<br>";
echo "<input type=text name=ver".$i."><br>";
echo "Адрес:<input name="url" . $i . ""/><br/>n";
}
}
elseif ( $_POST['method'] == 'upload' )
{
echo "<form method="post" action=?act=uf enctype="multipart/form-data">n";
for ( $i = 1; $i <= $_POST['num']; $i++ )
{
echo "<b>Файл " . $i . ":</b><br/>n";
echo "Экран:<select name="descr" . $i . ""/><br/>n";
$display=mysql_query("SELECT * FROM `display` ORDER BY `id` ASC");
while ($c = mysql_fetch_array($display))
{
echo "<option value=$c[id]>$c[name]";
}
echo "</select><br>";
echo "Платформа:<select name="plat" . $i . ""/><br/>n";
$platform=mysql_query("SELECT * FROM `platform` ORDER BY `name` ASC");
while ($p = mysql_fetch_array($platform))
{
echo "<option value=$p[id]>$p[name]";
}
echo "</select><br>";
echo "Язык: <select name="lang" . $i . ""/><br/>n";
$lang=mysql_query("SELECT * FROM `language` ORDER BY `id` ASC");
while ($l = mysql_fetch_array($lang))
{
echo "<option value=$l[id]>$l[name]";
}
echo "</select><br>";
echo "Версия (не обязательно):<br>";
echo "<input type=text name=ver".$i."><br>";
echo "Файл:<input name="file" . $i . "" type="file"/><br/>n";
}
}
echo "<input type="hidden" name="name" value="" . $_POST['name'] . ""/>n";//название
echo "<input type="hidden" name="descr" value="" . $_POST['descr'] . ""/>n";//описание
echo "<input type="hidden" name="id_dir" value="" . $_POST['id_dir'] . ""/>n";//директория
echo "<input type="hidden" name="method" value="" . $_POST['method'] . ""/>n";//метод
echo "<input type="hidden" name="num" value="" . $_POST['num'] . ""/>n";//кол-во файлов
echo "<input type="hidden" name="vendor" value="" . $_POST['vendor'] . ""/>n";//производитель
echo "<input type="hidden" name="screen" value="tmp/$scr_name"/>n";
echo "<input type="submit" name=send value="Завершить!"/>";
echo "</form>n";
}
}
if ($_GET['act']==uf) {
if (!isset($_POST['send'])) {
echo "Внимание<br>Нельзя вручную обходить форму";
}
else {
$id_dir = intval($_POST['id_dir']);
mysql_query("INSERT INTO `forum_theme` SET `id_topic`='21', `name`='$_POST[name]', `close`='0', `time_cr`='$time', `time_ed`='$time', `id_user`='$aut[id]'");
$them=mysql_result(mysql_query("SELECT `id` FROM `forum_theme` WHERE `name`='$_POST[name]'"),0);
mysql_query ("INSERT INTO `app_games` ( `id` , `cat_id` , `id_user`, `name` , `description` , `forum` , `vendor` , `added`, `updated` )
VALUES (0, '$id_dir', '$aut[id]', '".mysql_real_escape_string($_POST['name'])."', '".mysql_real_escape_string($_POST['descr'])."', '".$them."', '".mysql_real_escape_string($_POST['vendor'])."', '".time()."', '$time');");
$podr=mysql_result(mysql_query("SELECT `id` FROM `app_games` WHERE `forum`=$them"),0);
$msg="$_POST[descr]
[url=/app/file.php?id=$podr]Подробнее...[/url]";
mysql_query("INSERT INTO `forum_msg` SET `id_theme`='$them', `time`='$time', `msg`='$msg', `id_topic`='21', `id_user`='$aut[id]'");
mysql_query("UPDATE `forum_topic` SET `time`='$time' WHERE `id_topic`='21'");
$fid = mysql_result(mysql_query("SELECT `id` FROM `app_games` WHERE `forum`=$them"),0);
$for = mysql_result(mysql_query("SELECT `name` FROM `app_games` WHERE `forum`=$them"),0);
$method = $_POST['method'];
$num = intval($_POST['num']);
$array = array ();
if ( $method == 'upload' )
{
for ( $i = 1; $i <= $num; $i++ )
{
$descr = 'descr'.$i;
$lang = 'lang'.$i;
$plat = 'plat'.$i;
$descr = $_POST[$descr];
$lang = $_POST[$lang];
$plat = $_POST[$plat];
$ver = 'ver'.$i;
$ver = $_POST[$ver];
$description=mysql_result(mysql_query("SELECT `name` FROM `display` WHERE `id`=$descr"),0);
$platform=mysql_result(mysql_query("SELECT `name` FROM `platform` WHERE `id`=$plat"),0);
$language=mysql_result(mysql_query("SELECT `name` FROM `language` WHERE `id`=$lang"),0);
$nazv = "$for $description $platform $language $ver";
$url = 'file' . $i;
move_uploaded_file ( $_FILES[$url]['tmp_name'], 'files/' .$nazv. '.jar' );
$array[] = array ('ver'=>$ver, 'plat'=>$plat,'lang'=>$lang, 'descr' => $descr, 'url' => 'files/' .$nazv. '.jar' );
}
}
elseif ( $method == 'import' )
{
for ( $i = 1; $i <= $num; $i++ )
{
$url = $_POST['url' . $i];
$descr = $_POST['descr'.$i];
$lang = $_POST['lang'.$i];
$plat = $_POST['plat'.$i];
$ver = $_POST['ver'.$i];
$description=mysql_result(mysql_query("SELECT `name` FROM `display` WHERE `id`=$descr"),0);
$platform=mysql_result(mysql_query("SELECT `name` FROM `platform` WHERE `id`=$plat"),0);
$language=mysql_result(mysql_query("SELECT `name` FROM `language` WHERE `id`=$lang"),0);
$nazv = "$for $description $platform $language $ver";
copy ( $url, 'files/' .$nazv. '.jar' );
$array[] = array ('ver'=>$ver, 'plat'=>$plat,'lang'=>$lang, 'descr' => $descr, 'url' => 'files/' .$nazv. '.jar' );
}
}
else
{
for ( $i = 1; $i <= $num; $i++ )
{
$url = $_POST['url' . $i];
$descr = $_POST['descr'.$i];
$lang = $_POST['lang'.$i];
$plat = $_POST['plat'.$i];
$description=mysql_result(mysql_query("SELECT `name` FROM `display` WHERE `id`=$descr"),0);
$platform=mysql_result(mysql_query("SELECT `name` FROM `platform` WHERE `id`=$plat"),0);
$language=mysql_result(mysql_query("SELECT `name` FROM `language` WHERE `id`=$lang"),0);
$nazv = "$for $description $platform $language";
$array[] = array ('plat'=>$plat,'lang'=>$lang, 'descr' => $descr, 'url2' => $url );
}
}
//$arr = serialize ( $array );
$s_ext=pathinfo($_POST['screen'],PATHINFO_EXTENSION);
@copy ( $_POST['screen'], 'screen/'.$fid.'.'.$s_ext );
mysql_query ( "UPDATE `app_games` SET `screenshot`='screen/$fid.$s_ext' WHERE `id`='$fid';");
for($i=0;$i<count($array);$i++)
{
$config['jad']='/app/';
$pos=$i+1;
$size = round(filesize(''.$array[$i]['url'])/1024);
$jad = make_jad(''.$array[$i]['url'],'files/',$config['jad'].$array[$i]['url']);
$jad = str_replace('', '', $jad);
$jad = str_replace('//', '/', $jad);
mysql_query ("INSERT INTO `app_files` ( `id` , `game_id` , `cat_id` , `description` , `language`, `platform`, `jar_path` , `jad_path` , `size` , `position`, `time`, `ver` )
VALUES (0, '$fid', '$id_dir', '".$array[$i]['descr']."', '".$array[$i]['lang']."', '".$array[$i]['plat']."', '".$array[$i]['url']."', '$jad', '$size', '$pos', '$time', '".$array[$i]['ver']."');");
}
$na=mysql_result(mysql_query("SELECT `name` FROM `app_games` WHERE `id`=$fid"),0);
$op=fopen("games.txt", "a");
$sl="[url=/app/file.php?id=".$fid."]".$na."[/url], ";
fputs($op, $sl);
fclose($op);
echo "Файл успешно выгружен<br/>";
echo "<a href=file.php?id=$fid>К файлу</a>n";
}
}
}
echo '</div>';
include '../foot.php';
echo '</div>';
?>