Просмотр файла loads/index.php

Размер файла: 14.84Kb
<?php

include_once "inc/log.php";
include_once "inc/func.php";
include_once "css/index.php";

echo'<div class="titlemenu"><b>
	'.ucfirst($_SERVER['HTTP_HOST']).' - загрузки</b></div><div class="kletka">';
	echo'<center><b>'.check(vrem(date("j F G:i - l"))).'</b></center><br>';
	

#						РАЗДЕЛЫ




#____________________________________________________________ СОЗДАНИЕ
if(isset($_GET['add_razd']) && $session==1){

$name=check($_POST['name']);
$dir_name=check($_POST['dir_name']);
if(empty($name) || empty($dir_name)){
echo'Не заполнены поля!';
include_once "css/foot.php"; exit; }

if(!preg_match('|^[a-z0-9\-_]+$|i',$dir_name)){
exit('<br>Для имени папки разрешено использовать буквы латинского алфавита, тире цифры и символ пробел " _ "'); }

if(strlen(utf($name))<2 || strlen(utf($dir_name))<1 || strlen(utf($name))>25 || strlen(utf($dir_name))>25){
echo'Название раздела или директории слишком маленькое или длинное.';
include_once "css/foot.php"; exit; }

if(@is_dir("base/$dir_name")){ echo'Директория "base/'.check($dir_name).'" уже существует';
echo'<br><br><a href="?">назад</a>'; exit; }

if(mysql_num_rows(mysql_query("SELECT * FROM `razd` WHERE name='$name'"))){
echo'Раздел "'.check($name).'" уже существует!<br><br><a href="?">назад</a>'; exit; }

if(mkdir("base/".$dir_name."", 0777)){
mysql_query("INSERT INTO razd (name, dir_name) values ('$name', '$dir_name')");
mysql_query("CREATE TABLE `f_$dir_name` (`id` int(11) NOT NULL auto_increment, `razd` varchar(30), `pod_razd` varchar(40), `pod_razd2` varchar(40), `file` varchar(50), `name` varchar(30), `about` varchar(4000),  `date` varchar(30), `dwns` varchar(20), `scr_shot` varchar(30), `category` varchar(30), `time` int(30), `ves` varchar(10) default '0', `comms` int(10) default '0', PRIMARY KEY (id))");
	echo'<br>Раздел <b>'.$name.'</b> создан!
	<meta http-equiv="Refresh" content="1; URL=?"/>';
}else{ exit("Ошибка создания папки! Возможно такая папка уже существует"); }
include_once "css/foot.php"; exit; }





#____________________________________________________________ ОБНОВЛЕНИЕ БАЗЫ
if(isset($_GET['refresh']) && $session==1){

mysql_query("truncate table last");
mysql_query("truncate table razd");
mysql_query("truncate table pod_razd");
mysql_query("truncate table pod_razd2");

echo'<script>
	setTimeout(document.location="?refr", 10)
	</script>'; exit; }
if(isset($_GET['refr'])){ echo'<center><font color="gren">База обновлена!</font></center>'; }








#____________________________________________________________ УДАЛЕНИЕ
if(isset($_GET['del_rz']) && $session==1){
$dir=check($_GET['dir']);
$id=intval($_GET['id']);

$arr=mysql_fetch_array(mysql_query("SELECT * FROM `razd` where id='".$id."'"));
if(empty($arr['dir_name'])){
exit('Ошибка! Возможно выбран неверный ID'); }

if(@is_dir("base/".$arr['dir_name']."")){}else{ echo'Директории не существует!'; exit; }
cleardir("base/".$arr['dir_name']."");
mysql_query("delete FROM razd where id='".$id."'");
mysql_query("delete FROM pod_razd where razd='".$dir."'");
mysql_query("delete FROM pod_razd2 where razd='".$dir."'");
mysql_query("delete FROM last where razd='".$dir."'");
mysql_query("DROP TABLE `f_$dir`");
mysql_query("DROP TABLE `d_$dir`");

	echo'<br>Директория <b>'.check($arr['dir_name']).'</b> удалена!
	<meta http-equiv="Refresh" content="1; URL=?"/>';
exit; }

if(isset($_GET['del_raz']) && $session==1){
$dir=check($_GET['dir']);
$id=intval($_GET['id']);
if(empty($id) || !is_numeric($id)){ exit('Ошибка в ID !'); }
if(@is_dir("base/$dir")){
	echo'<br><center><b>Вы уверены что хотите удалить директорию "<font color=red>'.check($dir).'</font>" с ее содержимым?<br>
	<a href="?del_rz&id='.$id.'&dir='.$dir.'">Да</a> || <a href="index.php">Нет</a></center></b>';
	}else{ echo'Выбрана несуществующая директория'; }
include_once "css/foot.php"; exit; }















#____________________________________________________________ ПЕРЕИМЕНОВАНИЕ
if(isset($_GET['rnm_rz']) && $session==1){
$id=intval($_GET['id']);
$name = check($_POST['name']);
$dir_name=check($_POST['dir_name']);
$nw_name=check($_POST['nw_name']);
$nw_dir_name=check($_POST['nw_dir_name']);

if(empty($id) || !is_numeric($id)){ exit('Ошибка в ID !'); }
if(empty($name) || empty($dir_name) || empty($nw_name) || empty($nw_dir_name)){
echo'Не заполнены поля!';
include_once "css/foot.php"; exit; }

if(!preg_match('|^[a-z0-9\-_]+$|i',$nw_dir_name)){
exit('<br>Для имени папки разрешено использовать буквы латинского алфавита, цифры, тире и символ пробел " _ "'); }

if(is_dir('base/'.$nw_dir_name) && $dir_name!==$nw_dir_name){ exit('Такая директория уже существует!'); }
if(mysql_num_rows(mysql_query("SELECT * FROM razd WHERE name='$nw_name'")) && $name!==$nw_name){
exit('Раздел с таким названием уже существует.'); }

if(strlen(utf($dir_name))<1 || strlen(utf($dir_name))>25 || 
strlen(utf($nw_name))<2 || strlen(utf($nw_name))>25 || 
strlen(utf($nw_dir_name))<1 || strlen(utf($nw_dir_name))>25){
echo'Одно из полей слишком маленькое или длинное.';
include_once "css/foot.php"; exit; }

if(@is_dir("base/$dir_name")){}else{ echo'Директории "base/'.check($dir_name).'" не существует!'; exit; }

if(mysql_query("UPDATE razd SET name='$nw_name', dir_name='$nw_dir_name' WHERE id='".$id."'") && 
mysql_query("UPDATE pod_razd SET razd='$nw_dir_name' WHERE razd='$dir_name'") && 
mysql_query("UPDATE pod_razd2 SET razd='$nw_dir_name' WHERE razd='$dir_name'") && 
rename("base/$dir_name","base/$nw_dir_name")){

mysql_query("UPDATE last SET razd='$nw_dir_name', forlast='f_$nw_dir_name' WHERE razd='$dir_name' AND forlast='f_$dir_name'");
mysql_query("UPDATE last SET razd='$nw_dir_name', forlast='d_$nw_dir_name' WHERE razd='$dir_name' AND forlast='d_$dir_name'");
mysql_query("ALTER TABLE d_$dir_name RENAME d_$nw_dir_name;");
mysql_query("UPDATE d_$nw_dir_name SET razd='$nw_dir_name' WHERE razd='$dir_name'");
mysql_query("ALTER TABLE f_$dir_name RENAME f_$nw_dir_name;");
mysql_query("UPDATE f_$nw_dir_name SET razd='$nw_dir_name' WHERE razd='$dir_name'");

	echo'<br>Директория переименована успешно!
	<meta http-equiv="Refresh" content="1; URL=?"/>';
exit; }else{ exit('<br>Ошибка переименовния!'); }}



if(isset($_GET['rnm_raz']) && $session==1){
$id=intval($_GET['id']);
if(empty($id) || !is_numeric($id)){ exit('Ошибка в ID !'); }

$arr=mysql_fetch_array(mysql_query("SELECT * FROM `razd` where id='".$id."'"));
if(empty($arr['name']) || empty($arr['dir_name'])){
exit('Ошибка! Возможно выбран неверный ID'); }

	echo'<br><center><b>Переименование папки</b></center><br>
	<form method="post" action="?rnm_rz&id='.$id.'">
	Имя для отображения:
	<br>Из: <input name="name" maxlength="25" value="'.$arr['name'].'"> В: <input name="nw_name" maxlength="25" value="'.$arr['name'].'">
	<br><br>Имя для папки:
	<br>Из: <input name="dir_name" maxlength="25" value="'.check($arr['dir_name']).'"> В: <input name="nw_dir_name" maxlength="25" value="'.check($arr['dir_name']).'">
	<br><br><input class="button" type="submit"></form>
	';
include_once "css/foot.php"; exit; }








#____________________________________________________________ СКАЧИВАНИЙ
if(isset($_GET['down']) && is_numeric($_GET['down'])){
$dwn_fl=check($_GET['dir']);
$sx=@check($_GET['sx']);

if($_cnf_['v']=="y" && $session!==1){
echo'<br><center>Закрыт доступ для скачивания файлов!</center>';
exit; }

$fl=mysql_fetch_array(mysql_query("SELECT * FROM `".$dwn_fl."` where id='".$_GET['down']."'")) or die("Error!");
$dwn_up=$fl['dwns']+1;
mysql_query("UPDATE `".$dwn_fl."` SET dwns='".$dwn_up."'  where id='".$_GET['down']."'") or die(mysql_error());
mysql_query("UPDATE `last` SET dwns='".$dwn_up."'  WHERE id='".$_GET['down']."' AND forlast='$dwn_fl'") or die(mysql_error());

if($sx=="do"){
$se_file = "base/".$fl['razd']."/".$fl['pod_razd']."/".$fl['file'];
$se_scr = 'base/'.$fl['razd'].'/'.$fl['pod_razd'].'/'.$fl['scr_shot'];
}else{
$se_file = "base/".$fl['razd']."/".$fl['pod_razd']."/".@$fl['pod_razd2']."/".$fl['file'];
$se_scr = 'base/'.$fl['razd'].'/'.$fl['pod_razd'].'/'.@$fl['pod_razd2'].'/'.$fl['scr_shot'];
}


if(is_file($se_file)){
$ves=filesize($se_file);

echo'<center><b>'.$fl['name'].'</b> ('.ves($ves).')<br><br>';

if(!empty($fl['scr_shot'])){
echo'<a href="/loads/'.$se_scr.'">Скриншот</a><bR>'; }

echo'URL: <input value="http://'.$_SERVER['HTTP_HOST'].'/loads/'.$se_file.'" size="31">
<br><b><a href="/loads/'.$se_file.'">Скачать</a></b></center>';
echo'<br>Файлы скачиваемые с нашего сайта не были никем проверены.<br>Вы скачиваете их на свой страх и риск.';
}else{ echo'Файл не найден!'; }

include_once "css/foot.php"; exit; }



#____________________________________________________________ ПРОСМОТР
if(isset($_GET['s']) && is_numeric($_GET['s'])){
$dwn_fl=check($_GET['dir']);
$sx=@check($_GET['sx']);

$fl=mysql_fetch_array(mysql_query("SELECT * FROM `".$dwn_fl."` where id='".$_GET['s']."'")) or die("Error1!");

if($sx=="do"){
$se_file = "base/".$fl['razd']."/".$fl['pod_razd']."/".$fl['file'];
$se_scr = 'base/'.$fl['razd'].'/'.$fl['pod_razd'].'/'.$fl['scr_shot'];
}else{
$se_file = "base/".$fl['razd']."/".$fl['pod_razd']."/".@$fl['pod_razd2']."/".$fl['file'];
$se_scr = 'base/'.$fl['razd'].'/'.$fl['pod_razd'].'/'.@$fl['pod_razd2'].'/'.$fl['scr_shot'];
}


if(is_file($se_file)){

echo'<title>'.$fl['name'].'</title>';
echo'<div class=bar><center><b><big>'.$fl['name'].'</big></b></center></div>';

if(stristr($fl['file'], ".png") || stristr($fl['file'], ".jpg") || stristr($fl['file'], ".gif")){

$px_size = GetImageSize($se_file);
$pix_w = $px_size[0]; 
$pix_h = $px_size[1];

echo'<a href="/loads/image.php?image='.$se_file.'">
	<img src="/loads/image.php?image='.$se_file.'" alt="scr"></a><br><a href="/loads/'.$se_file.'">[ исходный размер '.$pix_w.'x'.$pix_h.' ]</a><br>
	<form method="post" action="/loads/image.php?image='.$se_file.'">
	<input name="w_size" value="240" size="3"> x <input name="h_size" value="320" size="3">
	<input value="открыть" name="do" type="submit" class="button"></form>';
 }

echo clr($fl['about']).'<br>________<br>';


if(!empty($fl['scr_shot'])){

$px_size = GetImageSize($se_scr);
$pix_w = $px_size[0]; 
$pix_h = $px_size[1];

echo'<a href="/loads/image.php?image='.$se_scr.'">
	<img src="/loads/image.php?image='.$se_scr.'" alt="scr"></a><br><a href="/loads/'.$se_scr.'">[ исходный размер '.$pix_w.'x'.$pix_h.' ]</a><br>
	<form method="post" action="/loads/image.php?image='.$se_scr.'">
	<input name="w_size" value="240" size="3"> x <input name="h_size" value="320" size="3">
	<input value="открыть" name="do" type="submit" class="button"></form>';
}

# ________ ЕСЛИ MEDIA-ФАЙЛ:
if(stristr($fl['file'], ".mp3")){
include "inc/mod/id.php";
$id3 = new MP3_Id();
$result = $id3->read($se_file);
$result = $id3->study();

echo "<br>Качество: <a href='#'>".$id3->getTag('mode')."</a><br>";
if($id3->getTag('bitrate') != ''){
echo "Битрейт: <a href='#'>".$id3->getTag('bitrate')." кбит/сек</a><br/>
Длительность: <a href='#'>".$id3->getTag('length')."</a><br/>";}
echo "Частота: <a href='#'>".$id3->getTag('frequency')." Гц</a><br>____<br>";
								}

echo'
Категория: <b>'.$fl['category'].'</b><br>
Выложен: '.$fl['date'].'<br>
Скачано: <b>'.$fl['dwns'].'</b> раз<br>
Размер: '.$fl['ves'].'<br>';
$dt = explode(".",$fl['file']);
if($sx=="do"){
echo'<b><a href="/loads/do/c'.$fl['id'].'/'.$_GET['dir'].'">Комментарии</a></b> ('.intval($fl['comms']).')<br>';
}else{
echo'<b><a href="/loads/c'.$fl['id'].'/'.$_GET['dir'].'">Комментарии</a></b> ('.intval($fl['comms']).')<br>';
}

if($_cnf_['v']=="y" && $session!==1){
echo'<br>Закрыт доступ для скачивания файлов!';
	}else{
echo'URL: <input value="http://'.$_SERVER['HTTP_HOST'].'/loads/'.$se_file.'" size="31">';

if($sx=="do"){
echo'<FORM method="POST" action="/loads/do/d'.$_GET['s'].'/'.$_GET['dir'].'">
<input value="Скачать" type="submit" class="button"></form>';
}else{
echo'<FORM method="POST" action="/loads/d'.$_GET['s'].'/'.$_GET['dir'].'">
<input value="Скачать" type="submit" class="button"></form>';
}
}

}else{ echo'Файл не найден!'; }

include_once "css/foot.php"; exit; }












#____________________________________________________________ ГЛАВНАЯ
echo'<title>Загрузки</title>';
if($session==1){
echo'<center>Привет Админ! <a href="enter.php?exit">[Выйти]</a></center>';
echo'<br><form method="post" action="?add_razd">
<b>Новый раздел:</b><br>Имя для отображения: <input name="name" value="">
			<br>Имя для папки: <input name="dir_name" value=""> 
<input value="Создать" name="do" type="submit" class="button"></form>';
	}


$r=mysql_query("SELECT * FROM `razd` ORDER BY `id` ASC LIMIT 0,100") or die("<br>Ждите обновления загрузок");
if(mysql_num_rows($r)!=0){
while($arr_r=mysql_fetch_array($r)){

echo'<div class=bar><center><a href="r-'.$arr_r['id'].'">'.$arr_r['name'].'</a>';
if($session==1){ echo' ('.prava("base/".$arr_r['dir_name']."").') .. <a href="?del_raz&id='.$arr_r['id'].'&dir='.check($arr_r['dir_name']).'"><font color=red>[DEL]</font></a> .. <a href="?rnm_raz&id='.$arr_r['id'].'">[ИЗМ]</a>'; }

echo'</center></div>';

if($_cnf_['u']!=="y"){
$arr2=mysql_query("SELECT * FROM `pod_razd` where razd='".$arr_r['dir_name']."' ORDER BY `id` ASC LIMIT 0,100");
while($arrr2=mysql_fetch_array($arr2)){

echo'<b>&#187; <a href="p-'.$arrr2['id'].'">'.$arrr2['name'].'</a></b>';

if($arrr2['count']>0){
echo' ('.intval($arrr2['count']).')<br>'; }else{ echo '<br>'; }
}}
}}else{ echo'<br><br><center>Архив файлов пуст.';
		if($session==1){ echo'<br><a href="?refresh">Обновить базу?</a></center>'; }}



include_once "css/foot.php";

?>