Размер файла: 10.79Kb
<?php
// by mides, 1da.su
require_once '../system/sys.php';
require_once '../system/auth_a.php';
require_once '../system/header.php';
if ($u['access'] == 1) header('location: ./');
if ($u['access'] == 2) header('location: ../loads.php?act=moderate');
switch ($act) {
default:
tp('Загруз-центр');
if (isset($_SESSION['info'])) echo '<b>'.$_SESSION['info'].'</b><br />'; unset($_SESSION['info']);
$cats_r = mysql_query("SELECT * FROM `loads_cats` ORDER BY `name`");
while ($cat = mysql_fetch_assoc($cats_r)) {
echo '<a href="../loads.php?act=cat&id='.$cat['id'].'">'.$cat['name'].'</a> (<a href="?act=cat_edit&id='.$cat['id'].'">ред</a>)<br />';
$subcats_r = mysql_query("SELECT * FROM `loads_subcats` WHERE `id_cat` = '$cat[id]' ORDER BY `name`");
while ($subcat = mysql_fetch_assoc($subcats_r)) {
echo '- <a href="../loads.php?act=subcat&id='.$subcat['id'].'">'.$subcat['name'].'</a> (<a href="?act=subcat_edit&id='.$subcat['id'].'">ред</a>)<br />';
}
}
echo '<br /><a href="?act=file_add">Добавить файл</a><br />
<a href="?act=file_multiadd">Добавить несколько</a><br />
<a href="../loads.php?act=moderate">Модерировать</a><br />
<br/>
<form action="?act=cat_add" method="post" name="form">
<select name="cat">
<option value="0">Главная</option>';
$cats_r = mysql_query("SELECT * FROM `loads_cats` ORDER BY `name`");
while ($cat = mysql_fetch_assoc($cats_r)) {
echo '<option value="'.$cat['id'].'">'.$cat['name'].'</option>';
}
echo '</select><br />
Название (под)раздела:<br/><input name="name" type="text" maxlength="50" /><br />
<input name="submit" type="submit" value="Добавить"></form>';
nav('./');
break;
case 'cat_add':
if ($_POST['name']) {
$cat = abs(intval($_POST['cat']));
$name = check($_POST['name']);
if ($cat > 0) {
$catn = mysql_fetch_assoc(mysql_query("SELECT `name` FROM `loads_cats` WHERE `id` = '$cat'"));
$path = str_to_en($catn['name']).'_'.str_to_en($name);
$path = str_replace(' ', '_', $path);
$path = str_replace('/', '-', $path);
mkdir('../inc/loads/'.$path, 0777);
mysql_query("INSERT INTO `loads_subcats` SET `id_cat` = '$cat', `name` = '$name', `path` = '$path'");
} else {
mysql_query("INSERT INTO `loads_cats` SET `name` = '$name'");
}
}
header('location: ?');
break;
case 'cat_edit':
$cat = mysql_fetch_assoc(mysql_query("SELECT * FROM `loads_cats` WHERE `id` = '$id'"));
if ($cat['id']) {
if (isset($_GET['ok'])) {
if ($_POST['del']) {
if (!mysql_num_rows(mysql_query("SELECT `id` FROM `loads_subcats` WHERE `id_cat` = '$id'"))) {
mysql_query("DELETE FROM `loads_cats` WHERE `id` = '$id'");
header('location: ?');
exit;
} else {
error('Удалите все подразделы раздела "'.$cat['name'].'"');
}
} else {
if ($_POST['name']) {
$name = check($_POST['name']);
mysql_query("UPDATE `loads_cats` SET `name` = '$name' WHERE `id` = '$id'");
header('location: ?');
exit;
} else {
header('location: ?act=cat_edit&id='.$id);
exit;
}
}
} else {
tp('Редактировать раздел');
echo '<form action="?act=cat_edit&id='.$id.'&ok=1" method="post">
Название:<br /><input name="name" type="text" maxlength="50" value="'.$cat['name'].'" /><br />
<input name="del" type="checkbox" value="1" /> удалить<br />
<input name="submit" type="submit" value="Ok" />
</form>';
}
} else {
error('Раздел не существует.');
}
nav('?');
break;
case 'subcat_edit':
$subcat = mysql_fetch_assoc(mysql_query("SELECT * FROM `loads_subcats` WHERE `id` = '$id'"));
if ($subcat['id']) {
if (isset($_GET['ok'])) {
if ($_POST['del']) {
$files = mysql_query("SELECT `file` FROM `loads` WHERE `id_subcat` = '$id'");
while ($file = mysql_fetch_assoc($files)) {
unlink('../inc/loads/'.$subcat['path'].'/'.$file['file']);
}
$rmdir = rmdir('../inc/loads/'.$subcat['path']);
if ($rmdir == 1) {
mysql_query("DELETE FROM `loads_subcats` WHERE `id` = '$id'");
$_SESSION['info'] = 'Подраздел "'.$subcat['name'].'" удален.';
} else {
$_SESSION['info'] = 'Произошла ошибка.';
}
header('location: ?');
exit;
} else {
if ($_POST['name']) {
$name = check($_POST['name']);
mysql_query("UPDATE `loads_subcats` SET `name` = '$name' WHERE `id` = '$id'");
header('location: ?');
exit;
} else {
header('location: ?act=subcat_edit&id='.$id);
exit;
}
}
} else {
tp('Редактировать подраздел');
echo '<form action="?act=subcat_edit&id='.$id.'&ok=1" method="post">
Название:<br /><input name="name" type="text" maxlength="50" value="'.$subcat['name'].'" /><br />
<input name="del" type="checkbox" value="1" /> удалить (все файлы подраздела будут также удалены)<br />
<input name="submit" type="submit" value="Ok" />
</form>';
}
} else {
error('Раздел не существует.');
}
nav('?');
break;
case 'file_add':
if ($ok) {
if (!empty($_POST['subcat']) and !empty($_POST['name']) and !empty($_FILES['file']['name']) ) {
$subcat_id = abs(intval($_POST['subcat']));
$subcat = mysql_fetch_assoc(mysql_query("SELECT * FROM `loads_subcats` WHERE `id` = '$subcat_id'"));
if (isset($subcat['id'])) {
$file = check(basename($_FILES['file']['name']));
if (!mysql_num_rows(mysql_query("SELECT `id` FROM `loads` WHERE `file` = '$file'"))) {
$name = check($_POST['name']);
$desc = check($_POST['desc']);
$author = check($_POST['author']);
$site = check($_POST['site']);
copy($_FILES['file']['tmp_name'], '../inc/loads/'.$subcat['path'].'/'.$file);
mysql_query("INSERT INTO `loads` SET `id_cat` = '$subcat[id_cat]', `id_subcat` = '$subcat[id]', `id_user` = '$u[id]', `name` = '$name', `desc` = '$desc', `author` = '$author', `site` = '$site', `file` = '$file', `time` = '".time()."', `ok` = 1");
$_SESSION['info'] = 'Загружено.';
header('location: ?act=file_add');
exit;
} else {
error('Подраздел не существует.');
nav('?act=file_add');
}
} else {
error('Файл уже существует.');
nav('?act=file_add');
}
} else {
error('Вы не указали название, не выбрали подраздел или файл.');
nav('?act=file_add');
}
} else {
tp('Добавить файл');
if (isset($_SESSION['info'])) echo '<b><u>'.$_SESSION['info'].'</u></b><br />'; unset($_SESSION['info']);
echo '<form action="?act=file_add&ok=1" method="post" enctype="multipart/form-data">
Выбрать подраздел*:<br /><select name="subcat">';
$cat_r = mysql_query("SELECT * FROM `loads_cats` ORDER BY `name`");
while ($cat = mysql_fetch_assoc($cat_r)) {
echo '<option value="0">'.$cat['name'].'</option>';
$subcat_r = mysql_query("SELECT * FROM `loads_subcats` WHERE `id_cat` = '$cat[id]' ORDER BY `name`");
while ($subcat = mysql_fetch_assoc($subcat_r)) {
echo '<option value="'.$subcat['id'].'">-- '.$subcat['name'].'</option>';
}
}
echo '</select><br />
Название(max50)*:<br /><input name="name" type="text" maxlength="50" /><br />
Описание:<br /><textarea name="desc" cols="" rows="4"></textarea><br />
Автор(max20):<br /><input name="author" type="text" maxlength="20" /><br />
Сайт(<del>http://</del>, max20):<br /><input name="site" type="text" maxlength="20" /><br />
Выбрать файл*:<br /><input name="file" type="file" size="file" /><br />
<input name="submit" type="submit" value="Ok" />
</form>';
nav('?');
}
break;
case 'file_multiadd':
tp('Добавить несколько файлов');
if ($ok) {
if (!empty($_POST)) {
$subcat_id = abs(intval($_POST['subcat']));
$subcat = mysql_fetch_assoc(mysql_query("SELECT * FROM `loads_subcats` WHERE `id` = '$subcat_id'"));
if (isset($subcat['id'])) {
for ($i = 0; $i < sizeof($_FILES['file']['name']); $i++) {
if (empty($_FILES['file']['name'][$i])) {
continue;
}
$filename = basename($_FILES['file']['name'][$i]);
$info = '';
if (!mysql_num_rows(mysql_query("SELECT `id` FROM `loads` WHERE `id_subcat` = '$subcat_id' and `file` = '$filename'"))){
$copy = copy($_FILES['file']['tmp_name'][$i], '../inc/loads/'.$subcat['path'].'/'.$filename);
if ($copy == TRUE) {
mysql_query("INSERT INTO `loads` SET `id_cat` = '$subcat[id_cat]', `id_subcat` = '$subcat[id]', `id_user` = '$u[id]', `name` = '$filename', `file` = '$filename', `time` = '".TIME."', `ok` = 1");
$info .= 'Файл '.$filename.' загружен.<br />';
} else {
$info .= 'Файл '.$filename.' не закачен. Проверьте CHMOD.<br />';
}
} else {
$info .= 'Файл '.$filename.' уже существует.<br />';
}
echo $info.'<br />- <a href="?act=file_multiadd">Загрузить еще</a>';
}
} else {
$_SESSION['note'] = 'Выбранный подраздел не существует.';
redirect('?act=file_multiadd');
}
} else {
$_SESSION['note'] = 'Не указан подраздел или файл (минимум один)';
}
} else {
echo '<form action="?act=file_multiadd&ok=1" method="post" enctype="multipart/form-data">
Выбрать подраздел*:<br /><select name="subcat">';
$subcat_r = mysql_query("SELECT * FROM `loads_subcats` WHERE `id` != '$load[id_subcat]' ORDER BY `id_cat`, `name`");
while ($subcat = mysql_fetch_assoc($subcat_r)) {
$cat = mysql_fetch_assoc(mysql_query("SELECT * FROM `loads_cats` WHERE `id` = '$subcat[id_cat]'"));
echo '<option value="'.$subcat['id'].'">'.$cat['name'].' > '.$subcat['name'].'</option>';
}
echo '</select><br />
Выбрать файл:<br />
<input name="file[]" type="file" /><br />
<input name="file[]" type="file" /><br />
<input name="file[]" type="file" /><br />
<input name="file[]" type="file" /><br />
<input name="file[]" type="file" /><br />
<input name="file[]" type="file" /><br />
<input name="file[]" type="file" /><br />
<input name="submit" type="submit" value="Загрузить" />
</form>';
}
nav('?');
break;
}
require_once '../system/tail_p.php';
?>