Файл: www/forum.php
Строк: 399
<?php
if (isset($_GET['act'])){
switch ($_GET['act']){
case 'adm' :
//Начало админки
include 'inc/mysql.php';//БД
include 'inc/check.php';//Сессии
include 'inc/functions.php'; //Стиль и кодировка
top();
include 'inc/account.php';//Пользовательская переменная account
$titlestr='Форум';
include 'inc/interface.php';
echo '<div class="title">Общий форум - Админка</div>';
if (isset($_SESSION['auth']) && $_SESSION['auth']==1){
if ($account['status']=="moder" || $account['status']=="gm"){
switch($_GET['option']){
case 'msg' :
if (isset($_GET['del']) && !empty($_GET['del']) && is_numeric($_GET['del'])){
@mysql_query("DELETE FROM `forum_mess` WHERE `id`='".intval($_GET['del'])."'");
header("Location: ".$_SERVER['HTTP_REFERER']);
}
if (isset($_GET['ed']) && !empty($_GET['ed']) && is_numeric($_GET['ed'])){
if (mysql_result(mysql_query("SELECT COUNT(*) FROM `forum_mess` WHERE `id`='".intval($_GET['ed'])."'"),0)==0){
header("Location: ?act=adm&option=msg");
}
$ed=mysql_fetch_array(mysql_query("SELECT * FROM `forum_mess` WHERE `id`='".intval($_GET['ed'])."'"));
if(isset($_POST['msg'])){
$_POST['msg'] = trim($_POST['msg']);
if(!empty($_POST['msg'])){
if(strlen($_POST['msg'])>1024) $err[]='Слишком длинное сообщение!';
if(strlen($_POST['msg'])<2) $err[]='Слишком короткое сообщение!';
}else{
$err[]='Пустое сообщение!';
}
if(!$err){
$msg = mysql_real_escape_string($_POST['msg']);
mysql_query("UPDATE `forum_mess` SET `msg`='$msg' WHERE `id`='".intval($ed['id'])."'");
echo '<div class="help">Сохранено</div>';
$ed=mysql_fetch_array(mysql_query("SELECT * FROM `forum_mess` WHERE `id`='".intval($_GET['ed'])."'"));
}else{
foreach($err as $value){
echo "<div class='help'>".$value."</div>";
}
}
}
echo '
<div class="aut">
<form method="post" action="">
Сообщение [2-1024]:
<br>
<textarea rows="2" cols="30" name="msg">'.htmlspecialchars(stripslashes($ed['msg'])).'</textarea>
<br />
<input type="submit" class="submit" value="Сохранить">
</form>
</div>
<a class="link" href="?act=them&id='.$ed['id_theme'].'">В тему</a>
';
}
if (isset($_GET['sinhr']) && $_GET['sinhr']==1){
$qs=mysql_query("SELECT * FROM `forum_mess`");
while($resqs=mysql_fetch_array($qs)){
if (mysql_num_rows(mysql_query("SELECT * FROM `forum_theme` WHERE `id`='".$resqs['id_theme']."'"))==0){
mysql_query("DELETE FROM `forum_mess` WHERE `id`='".$resqs['id']."'");
}
}
echo '<div class="help">Синхронизация завершена!</div>';
}
break;
case 'them' :
if (isset($_GET['ed']) && !empty($_GET['ed']) && is_numeric($_GET['ed'])){
if (mysql_result(mysql_query("SELECT COUNT(*) FROM `forum_theme` WHERE `id`='".$_GET['ed']."'"),0)==0){
header("Location: ?act=adm&option=them");
}
$ed=mysql_fetch_array(mysql_query("SELECT * FROM `forum_theme` WHERE `id`='".intval($_GET['ed'])."'"));
if(isset($_POST['msg']) && isset($_POST['name'])){
$_POST['msg'] = trim($_POST['msg']);
if(!empty($_POST['msg'])){
if(strlen($_POST['msg'])>1024) $err[]='Слишком длинное сообщение!';
if(strlen($_POST['msg'])<2) $err[]='Слишком короткое сообщение!';
}else{
$err[]='Пустое сообщение!';
}
$_POST['name'] = trim($_POST['name']);
if(!empty($_POST['name'])){
if(strlen($_POST['name'])>50) $err[]='Слишком длинное название!';
if(strlen($_POST['name'])<2) $err[]='Слишком короткое название!';
}else{
$err[]='Пустое название!';
}
if(!$err){
$name = mysql_real_escape_string($_POST['name']);
$msg = mysql_real_escape_string($_POST['msg']);
$razdel_t=intval($_POST['razdel']);
mysql_query("UPDATE `forum_theme` SET `name`='$name',`msg`='$msg',`id_razdel`='".intval($razdel_t)."' WHERE `id`='".intval($ed['id'])."'");
header("Location: ?act=adm&option=them&ed=".$ed['id']);
}else{
foreach($err as $value){
echo "<div class='help'>".$value."</div>";
}
}
}
echo '
<div class="aut">
<form method="post" action="">
Название [2-50]:<br />
<input name="name" value="'.htmlspecialchars(stripslashes($ed['name'])).'"><br />
Сообщение [2-1024]:
<br>
<textarea rows="2" cols="30" name="msg">'.htmlspecialchars(stripslashes($ed['msg'])).'</textarea>
<br />
Раздел:
<br>';
$qr=mysql_query("SELECT * FROM `forum_razdel`");
while($qry=mysql_fetch_array($qr)){
if ($qry['type']!='razdel_name'){
echo '<input type="radio" name="razdel" value="'.$qry['id'].'"';
if ($qry['id']==$ed['id_razdel']){ echo 'checked="checked"';}
echo '>';
echo $qry['name'].'<br />';
}
}
echo '
<input type="submit" class="submit" value="Сохранить">
</div>
<a class="link" href="?act=them&id='.$ed['id'].'">В тему</a>
</form>
';
}
if (isset($_GET['del']) && !empty($_GET['del']) && is_numeric($_GET['del'])){
@mysql_query("DELETE FROM `forum_theme` WHERE `id`='".intval($_GET['del'])."'");
@mysql_query("DELETE FROM `forum_mess` WHERE `id_theme`='".intval($_GET['del'])."'");
}
if (isset($_GET['sinhr']) && $_GET['sinhr']==1){
//Синхронизация тем
$qs=mysql_query("SELECT * FROM `forum_theme`");
while($resqs=mysql_fetch_array($qs)){
if (mysql_num_rows(mysql_query("SELECT * FROM `forum_razdel` WHERE `id`='".$resqs['id_razdel']."'"))==0){
mysql_query("DELETE FROM `forum_theme` WHERE `id`='".$resqs['id']."'");
}
}
echo '<div class="help">Синхронизация завершена!</div>';
}
$cop=5;
$ca=mysql_result(mysql_query("SELECT COUNT(*) FROM `forum_theme`"),0);
$cp=ceil($ca/$cop);
if(isset($_GET['page']) && is_numeric($_GET['page'])){
$page = $_GET['page'];
if($_GET['page']>$cp) $page=$cp;
if($_GET['page']<1)$page=1;
}else{
$page=1;
}
$start=$page*$cop-$cop;
$q=mysql_query("SELECT * FROM `forum_theme` ORDER BY `id` DESC LIMIT $start,$cop");
if (mysql_num_rows($q)==0){
echo '<div class="help">Тем нет
</div>';
}
while($result=mysql_fetch_array($q)){
echo '<div class="link_str">';
$count=mysql_result(mysql_query("SELECT COUNT(*) FROM `forum_mess` WHERE `id_theme`='".$result['id']."'"),0);//Сколько сообщений в теме
@$last_mess=mysql_result(mysql_query("SELECT `account` FROM `forum_mess` WHERE `id_theme`='".$result['id']."' ORDER BY `id` DESC LIMIT 1"),0);//Последнее сообщение
$last_user=mysql_fetch_array(mysql_query("SELECT * FROM `account` WHERE `id`='".$last_mess."'"));//Последний пользователь
$_user=mysql_fetch_array(mysql_query("SELECT * FROM `account` WHERE `id`='".$result['account']."'"));
echo '<a href="/forum.php?act=adm&option=them&del='.$result['id'].'">[x]</a> <a href="/forum.php?act=adm&option=them&ed='.$result['id'].'">[ред]</a> <b><a href="/char.php?id='.$_user['id'].'">'.$_user['name'].'</a></b> : <a href="/forum.php?act=them&id='.$result['id'].'">'.bbcode(htmlspecialchars(stripslashes($result['name']))).'</a> <span class="count">'.$count.'</span>';
if (!empty($last_user)){
echo '<span class="count">'.$last_user['name'].'</div>';
}
echo '</div>';
}
echo '
<div class="link_str">
Страницы
';
if($page-1>0){
echo '<a href="?act=adm&option=them&page='.($page-1).'"><</a> ';
}
if($page-1>0){
echo '<a href="?act=adm&option=them&page='.($page-1).'">'.($page-1).'</a> ';
}
echo '<b>'.$page.'</b>';
if($page+1<=$cp){
echo ' <a href="?act=adm&option=them&page='.($page+1).'">'.($page+1).'</a>';
}
if($page+1<=$cp){
echo ' <a href="?act=adm&option=them&page='.($page+1).'">></a>';
}
echo '</div>';
break;
case 'razdel' :
if (isset($_GET['ed']) && !empty($_GET['ed']) && is_numeric($_GET['ed'])){
if (mysql_result(mysql_query("SELECT COUNT(*) FROM `forum_razdel` WHERE `id`='".$_GET['ed']."'"),0)==0){
header("Location: ?act=adm&option=razdel");
}
$ed=mysql_fetch_array(mysql_query("SELECT * FROM `forum_razdel` WHERE `id`='".intval($_GET['ed'])."'"));
if(isset($_POST['about']) && isset($_POST['name'])){
if ($_POST['type']==true){
$type = 'razdel_name';
}else{
$type = '';
}
$_POST['about'] = trim($_POST['about']);
if(!empty($_POST['about'])){
if(strlen($_POST['about'])>1024) $err[]='Слишком длинное сообщение!';
if(strlen($_POST['about'])<2) $err[]='Слишком короткое сообщение!';
}else{
$err[]='Пустое сообщение!';
}
$_POST['name'] = trim($_POST['name']);
if(!empty($_POST['name'])){
if(strlen($_POST['name'])>20) $err[]='Слишком длинное название!';
if(strlen($_POST['name'])<2) $err[]='Слишком короткое название!';
}else{
$err[]='Пустое название!';
}
if(!$err){
$name = mysql_real_escape_string($_POST['name']);
$about = mysql_real_escape_string($_POST['about']);
mysql_query("UPDATE `forum_razdel` SET `name`='$name',`about`='$about',`type`='$type' WHERE `id`='".intval($ed['id'])."' ");
header("Location: ?act=adm&option=razdel&ed=".$ed['id']);
}else{
foreach($err as $value){
echo "<div class='help'>".$value."</div>";
}
}
}
echo '
<div class="text">
<form method="post" action="">
Название [2-20]:<br />
<input name="name" value="'.htmlspecialchars(stripslashes($ed['name'])).'"><br />
Сообщение [2-1024]:
<br>
<textarea rows="2" cols="30" name="about">'.htmlspecialchars(stripslashes($ed['about'])).'</textarea>
<br />';
if ($ed['type']=='razdel_name'){
echo '<input type="checkbox" name="type" checked>Раздел маркер';
}else{
echo '<input type="checkbox" name="type">Раздел маркер';
}
echo '<br />
<input type="submit" class="submit" value="Сохранить">
</form>
</div>
';
echo '<div class="link"><a href="?razdel='.$ed['id'].'">В раздел</a></div>';
}
if (isset($_GET['del']) && !empty($_GET['del']) && is_numeric($_GET['del'])){
@mysql_query("DELETE FROM `forum_razdel` WHERE `id`='".intval($_GET['del'])."'");
$q_del_msg=mysql_query("SELECT * FROM `forum_theme` WHERE `id_razdel`='".intval($_GET['del'])."'");
while($res_del=mysql_fetch_assoc($q_del_msg)){
@mysql_query("DELETE FROM `forum_mess` WHERE `id_theme`='".intval($res_del['id'])."'");
@mysql_query("DELETE FROM `forum_theme` WHERE `id`='".intval($res_del['id'])."'");
}
@mysql_query("DELETE * FROM `forum_theme` WHERE `id_razdel`='".intval($_GET['del'])."'");
}
if(isset($_POST['n_about']) && isset($_POST['n_name'])){
//Антиспам
//if (mysql_result(mysql_query("SELECT COUNT(*) FROM `forum_theme` WHERE `user`='".$user['id']."'"),0)>0 AND 300>(time()-mysql_result(mysql_query("SELECT `time` FROM `forum_theme` WHERE `user`='".$user['id']."' ORDER BY `id` DESC LIMIT 1"),0)))$err[]='Нельзя создавать темы так часто!';
if(strlen($_POST['n_about'])>1024) $err[]='Слишком длинное описание!';
if(strlen($_POST['n_about'])<2) $err[]='Слишком короткое описание!';
if(strlen($_POST['n_name'])>50) $err[]='Слишком длинное название!';
if(strlen($_POST['n_name'])<2) $err[]='Слишком короткое название!';
if(!$err){
$name = mysql_real_escape_string($_POST['n_name']);
$about = mysql_real_escape_string($_POST['n_about']);
if ($_POST['n_type']){
$type='razdel_name';
}else{
$type=NULL;
}
mysql_query("INSERT INTO `forum_razdel`(`about`,`name`,`type`) VALUES('$about','$name','$type')");
header("Location: /forum.php?act=adm&option=razdel");
}else{
foreach($err as $value){
echo "<div class='help'>".$value."</div>";
}
}
}
echo '<div class="title_glav">Разделы</div>';
$q=mysql_query("SELECT * FROM `forum_razdel`");//Формируем запрос
while($result=mysql_fetch_array($q)){
//Выводим список
if ($result['type']=='razdel_name'){
//Если это раздел маркер
echo '<div class="title_glav">';
echo '<a href="/forum.php?act=adm&option=razdel&del='.$result['id'].'">[x]</a> <a href="/forum.php?act=adm&option=razdel&ed='.$result['id'].'">[ред]</a> <u><b>'.$result['name'].'</b></u></div>';
}else{
//Иначе если это раздел с темами
$count=mysql_result(mysql_query("SELECT COUNT(*) FROM `forum_theme` WHERE `id_razdel`='".$result['id']."'"),0);
echo '<div class="link_str">';
echo '<a href="/forum.php?act=adm&option=razdel&del='.$result['id'].'">[x]</a> <a href="/forum.php?act=adm&option=razdel&ed='.$result['id'].'">[ред]</a> <a href="/forum.php?act=razdel&id='.$result['id'].'">'.$result['name'].'</a><span class="count">'.$count.'</span></div>';
}
}
echo '<div class="text">';
echo '
<form method="post" action="">
Название [2-50]:<br />
<input type="text" name="n_name"><br />
Описание [2-1024]:<br />
<textarea rows="2" cols="30" name="n_about"></textarea><br />
<input type="checkbox" name="n_type">Раздел маркер<br />
<input type="submit" class="submit" value="Создать">
</form></div>
';
break;
}
echo '<div class="title_glav">Управление</div><div class="link">';
echo '<a href="/forum.php?act=adm&option=msg&sinhr=1">Синхронизация сообщений</a>';
echo '<a href="/forum.php?act=adm&option=them&sinhr=1">Синхронизация тем</a>';
echo '<a href="/forum.php?act=adm&option=them">Управление темами</a>';
echo '<a href="/forum.php?act=adm&option=razdel">Управление разделами</a>';
echo '<a href="/forum.php">Форум</a>';
echo '</div>';
}else{
header("Location: /forum.php");
}
}else{
header("Location: /forum.php");
}
down();
//Конец админки
break;
case "razdel" :
//Раздел
include 'inc/mysql.php';//БД
include 'inc/check.php';//Сессии
include 'inc/functions.php';
$page['title']='Форум';//Заголовок страницы
top();
include 'inc/account.php';//Пользовательская переменная account
$titlestr='Форум';
include 'inc/interface.php';
if(isset($_SESSION['auth']) && $_SESSION['auth']==1){
echo '
<div class="title">
Общий форум
</div>';
echo '<div class="border-top"></div>';
if (isset($_GET['id']) && is_numeric($_GET['id'])){
//Проверка на существование
if (mysql_result(mysql_query("SELECT * FROM `forum_razdel` WHERE `id`='".$_GET['id']."'"),0)>0){
if (mysql_result(mysql_query("SELECT `type` FROM `forum_razdel` WHERE `id`='".$_GET['id']."'"),0)=='razdel_name'){
//Если это раздел маркер
header('Location: /forum.php');
}
$razdel=intval($_GET['id']); //Текущий раздел
//Навигация
$cop=5;
$ca=mysql_result(mysql_query("SELECT COUNT(*) FROM `forum_theme` WHERE `id_razdel`='".$razdel."'"),0);
$cp=ceil($ca/$cop);
if(isset($_GET['page']) && is_numeric($_GET['page'])){
$page = $_GET['page'];
if($_GET['page']>$cp) $page=$cp;
if($_GET['page']<1)$page=1;
}else{
$page=1;
}
$start=$page*$cop-$cop;
$q=mysql_query("SELECT * FROM `forum_theme` WHERE `id_razdel`='".$razdel."' ORDER BY `id` DESC LIMIT $start,$cop");
if (mysql_num_rows($q)==0){
echo '<div class="help">В этом разделе тем нет.
</div>';
}
while($result=mysql_fetch_assoc($q)){
echo '<div class="help">';
$count=mysql_result(mysql_query("SELECT COUNT(*) FROM `forum_mess` WHERE `id_theme`='".$result['id']."'"),0);//Сколько сообщений в теме
@$last_mess=mysql_result(mysql_query("SELECT `account` FROM `forum_mess` WHERE `id_theme`='".$result['id']."' ORDER BY `id` DESC LIMIT 1"),0);//Последнее сообщение
//$last_user=mysql_fetch_array(mysql_query("SELECT * FROM `account` WHERE `id`='".$last_mess."'"));//Последний пользователь
$_user=mysql_fetch_array(mysql_query("SELECT * FROM `account` WHERE `id`='".$result['account']."'"));
if ($account['status']=='moder' || $account['status']=='gm'){
echo '<a href="?act=adm&option=them&del='.$result['id'].'">[x]</a> ';
echo '<a href="?act=adm&option=them&ed='.$result['id'].'">[ред]</a> ';
}
echo '<a href="/char.php?id='.$_user['id'].'">'.$_user['name'].'</a> : <a href="/forum.php?act=them&id='.$result['id'].'">'.bbcode(htmlspecialchars(stripslashes($result['name']))).'</a> <stat>'.$count.'</stat>';
//if (!empty($last_user)){
//echo '<span class="count">Посл. '.$last_user['name'].'</span>';
//}
echo '</div>';
}
echo '
<div class="nstr">
Страницы ';
if($page-1>0){
echo '<a href="/forum.php?act=razdel&id='.$razdel.'&page='.($page-1).'"><</a>';
}
if($page-1>0){
echo '<a href="/forum.php?act=razdel&id='.$razdel.'&page='.($page-1).'">'.($page-1).'</a>';
}
echo '<b>'.$page.'</b>';
if($page+1<=$cp){
echo '<a href="/forum.php?act=razdel&id='.$razdel.'&page='.($page+1).'">'.($page+1).'</a>';
}
if ($page+1<=$cp){
echo '<a href="/forum.php?act=razdel&id='.$razdel.'&page='.($page+1).'">></a>';
}
echo '<a class="navi" href="forum.php?act=newt&id='.$razdel.'">Новая тема</a>';
echo '
<a class="navi" href="/forum.php">Форум</a></div>';
echo '</div>';
}else{
//Если раздела не существует
header('Location: /forum.php');
}
}else{
//Если пустой параметр $_GET[id]
header("Location: /forum.php");
}
}else{
//Если пользователь не авторизирован
header("Location: /?");
}
down();
//Конец раздела
break;
case "them" :
//Тема
include 'inc/mysql.php';//БД
include 'inc/check.php';//Сессии
$page['title']='Форум';//Заголовок страницы
include 'inc/functions.php'; //Стиль и кодировка
top();
include 'inc/account.php';//Пользовательская переменная account
$titlestr='Форум';
include 'inc/interface.php';
if (isset($_SESSION['auth']) && $_SESSION['auth']==1){
if (isset($_GET['id']) && is_numeric($_GET['id'])){
//Проверка на существование
if (mysql_result(mysql_query("SELECT COUNT(*) FROM `forum_theme` WHERE `id`='".intval($_GET['id'])."'"),0)>0){
$them=mysql_fetch_array(mysql_query("SELECT * FROM `forum_theme` WHERE `id`='".intval($_GET['id'])."'"));
if(isset($_POST['msg'])){
$msg = mysql_real_escape_string($_POST['msg']);
$_POST['msg'] = trim($msg);
if(!empty($_POST['msg'])){
//Антиспам
if (mysql_result(mysql_query("SELECT COUNT(*) FROM `forum_mess` WHERE `account`='".$account['id']."'"),0)>0 AND 5>(time()-mysql_result(mysql_query("SELECT `time` FROM `forum_mess` WHERE `account`='".$account['id']."' ORDER BY `id` DESC LIMIT 1"),0)))$err[]='Нельзя писать так часто!';
if(strlen($_POST['msg'])>255) $err[]='Слишком длинное сообщение!';
if(strlen($_POST['msg'])<3) $err[]='Слишком короткое сообщение!';
}else{
$err[]='Пустое сообщение!';
}
if(!$err){
mysql_query("INSERT INTO `forum_mess`(`account`,`msg`,`id_theme`,`time`) VALUES('".$account['id']."','".mysql_real_escape_string($_POST['msg'])."','".$them['id']."','".time()."')");
header("Location: ?act=them&id=$them[id]");
}else{
foreach($err as $value){
echo "<div class='help'>".$value."</div>";
}
}
}
echo '
<div class="title">
Общий форум
</div>';
echo '<div class="border-top"></div>';
echo '<div class="list1">';
$autor=mysql_fetch_array(mysql_query("SELECT * FROM `account` WHERE `id`='".$them['account']."'"));
echo '<a href="/char.php?id='.$autor['id'].'">'.($account['status']=='moder' || $account['status']=='gm'?'<us>':null).$autor['name'].'</us></a> '.bbcode(htmlspecialchars(stripslashes($them['name']))).' '.untime($them['time']).'<hr>';
echo ''.smiles(bbcode(htmlspecialchars(stripslashes($them['msg'])))).'
</div>';
echo '
<form method="post" class="aut" action="">
Сообщение [2-255]:
<br>
<textarea rows="2" cols="30" name="msg"></textarea>
<br>
<input type="submit" class="submit" value="Отправить">
</form>
';
//Вывод сообщений
$cop=5;
$ca=mysql_result(mysql_query("SELECT COUNT(*) FROM `forum_mess` WHERE `id_theme`='".$them['id']."'"),0);
$cp=ceil($ca/$cop);
if(isset($_GET['page']) && is_numeric($_GET['page'])){
$page = $_GET['page'];
if($_GET['page']>$cp) $page=$cp;
if($_GET['page']<1)$page=1;
}else{
$page=1;
}
$start=$page*$cop-$cop;
$q=mysql_query("SELECT * FROM `forum_mess` WHERE `id_theme`='".$them['id']."' ORDER BY `id` DESC LIMIT $start,$cop");
$dlist = 'list2';
while ($result=mysql_fetch_array($q)){
echo '<div class="'.$dlist.'">';
$_user = mysql_fetch_assoc(mysql_query("SELECT * FROM `account` WHERE `id`='".$result['account']."'"));
if ($account['status']=='moder' OR $account['status']=='gm'){
echo "<a href='?act=adm&option=msg&del=".$result['id']."'>[x]</a>";
echo " <a href='?act=adm&option=msg&ed=".$result['id']."'>[ред]</a> ";
}
echo '
<a href="/char.php?id='.$_user['id'].'">'.($_user['status']=='moder' || $_user['status']=='gm'?'<us>':null).$_user['name'].'</us></a> '.untime($result['time']).'<hr>
';
echo smiles(bbcode(htmlspecialchars(stripslashes($result['msg']))))."
</div>";
if ($dlist == 'list1'){
$dlist = 'list2';
}else{
$dlist = 'list1';
}
}
echo '
<div class="nstr">
Страницы ';
if($page-1>0){
echo '<a href="/forum.php?act=them&id='.$them['id'].'&page='.($page-1).'"><</a>';
}
if($page-1>0){
echo '<a href="/forum.php?act=them&id='.$them['id'].'&page='.($page-1).'">'.($page-1).'</a>';
}
echo '<b>'.$page.'</b>';
if($page+1<=$cp){
echo '<a href="/forum.php?act=them&id='.$them['id'].'&page='.($page+1).'">'.($page+1).'</a>';
}
if ($page+1<=$cp){
echo '<a href="/forum.php?act=them&id='.$them['id'].'&page='.($page+1).'">></a>';
}
echo '
<a class="navi" href="/forum.php?act=razdel&id='.$them['id_razdel'].'">Раздел</a>
<a class="navi" href="/forum.php">Форум</a>
</div>';
}else{
//Если раздела не существует
header('Location: /forum.php');
}
}else{
//Если пустой параметр $_GET[id]
header("Location: /forum.php");
}
}else{
//Если пользователь не авторизирован
header("Location: /?");
}
down();
//Конец темы
break;
case "newt" :
//Новая тема
include 'inc/mysql.php';//БД
include 'inc/check.php';//Сессии
include 'inc/functions.php';
$page['title']='Форум';//Заголовок страницы
top();
include 'inc/account.php';//Пользовательская переменная account
$titlestr='Форум';
include 'inc/interface.php';
if (isset($_SESSION['auth']) && $_SESSION['auth']==1){
if (isset($_GET['id']) && is_numeric($_GET['id'])){
//Проверка на существование
if (mysql_result(mysql_query("SELECT * FROM `forum_razdel` WHERE `id`='".$_GET['id']."'"),0)>0){
if (mysql_result(mysql_query("SELECT `type` FROM `forum_razdel` WHERE `id`='".$_GET['id']."'"),0)=='razdel_name'){
//Если это раздел маркер
header('Location: /forum.php');
}
$razdel=$_GET['id']; //Текущий раздел
if(isset($_POST['msg']) && isset($_POST['name'])){
//Антиспам
if (mysql_result(mysql_query("SELECT COUNT(*) FROM `forum_theme` WHERE `account`='".$account['id']."'"),0)>0 AND 300>(time()-mysql_result(mysql_query("SELECT `time` FROM `forum_theme` WHERE `account`='".$account['id']."' ORDER BY `id` DESC LIMIT 1"),0)))$err[]='Нельзя создавать темы так часто!';
$_POST['msg'] = trim($_POST['msg']);
if(!empty($_POST['msg'])){
if(strlen($_POST['msg'])>1024) $err[]='Слишком длинное сообщение!';
if(strlen($_POST['msg'])<2) $err[]='Слишком короткое сообщение!';
}else{
$err[]='Пустое сообщение!';
}
$_POST['name'] = trim($_POST['name']);
if(!empty($_POST['name'])){
if(strlen($_POST['name'])>20) $err[]='Слишком длинное название!';
if(strlen($_POST['name'])<2) $err[]='Слишком короткое название!';
}else{
$err[]='Пустое название!';
}
if(!$err){
$name = mysql_real_escape_string($_POST['name']);
$msg = mysql_real_escape_string($_POST['msg']);
mysql_query("INSERT INTO `forum_theme`(`msg`,`name`,`time`,`id_razdel`,`account`) VALUES('$msg','$name','".time()."','".$razdel."','".$account['id']."')");
$tema_id2 = mysql_insert_id();
//$tema_id = mysql_result(mysql_query("SELECT count(*) FROM `forum_theme`"), 0);
mysql_query("INSERT INTO `forum_mess`(`account`,`msg`,`id_theme`,`time`) VALUES('".$account['id']."','Тема успешно создана! ЗАПРЕЩЕНЫ нецензурные выражения, флейм, флуд(кроме привата)...,создание "пустых", неинформативных сообщений,и пр., что запрещают правила сайта!(всё это не относитса к разделу Общение!)!Нарушители данных правил могут быть лишены доступа на форум.Внимание! Этот пост сгенерирован роботом, и отвечать на него ненужно!','".$tema_id2."','".time()."')");
echo '<div class="help">Тема успешно создана!
</div><div class="nstr">
<a class="navi" href="?act=them&id='.$tema_id2.'">В тему</a>
<a class="navi" href="/forum.php">Форум</a>
</div>';
down();
exit;
}else{
foreach($err as $value){
echo "<div class='help'>".$value."</div>";
}
}
}
echo '
<div class="title">
Общий форум
</div>
';
echo '<div class="border-top"></div>';
echo '<div class="aut">';
echo '
<form method="post" action="">
Название [2-20]:<br />
<input type="text" name="name" value="'. htmlspecialchars($_POST['name']).'"><br />
Сообщение [2-1024]:<br />
<textarea rows="2" cols="30" name="msg" ></textarea><br />
<input type="submit" class="submit" value="Создать">
</form>
';
echo '</div>';
}else{
//Если раздела не существует
header('Location: /forum.php');
}
}else{
//Если пустой параметр $_GET[id]
header("Location: /forum.php");
}
}else{
//Если пользователь не авторизирован
header("Location: /?");
}
//Начало форума
echo '
<div class="nstr">
<a class="navi" href="?act=razdel&id='. htmlspecialchars($_GET['id']).'">Раздел</a>
';
echo '<a class="navi" href="/forum.php">Форум</a>';
echo '</div>';
down();
//Конец новой темы
break;
default : header("Location: /?");
}
exit;
}
include 'inc/mysql.php';//БД
include 'inc/check.php';//Сессии
include 'inc/functions.php'; //Стиль и кодировка
top();
include 'inc/account.php';//Пользовательская переменная account
$titlestr='Форум';
include 'inc/interface.php';
echo '
<div class="title">
Общий форум
</div>';
echo '<div class="border-top"></div>';
if (isset($_SESSION['auth']) && $_SESSION['auth']==1){
$q=mysql_query("SELECT * FROM `forum_razdel`");//Формируем запрос
while($result=mysql_fetch_array($q)){
//Выводим список
if ($result['type']=='razdel_name'){
//Если это общее название нескольких разделов
echo '<div class="title">'.$result['name'].'</div>';
}else{
//Иначе если это раздел с темами
$count=mysql_result(mysql_query("SELECT COUNT(*) FROM `forum_theme` WHERE `id_razdel`='".$result['id']."'"),0);
echo '<div class="help"><a href="/forum.php?act=razdel&id='.$result['id'].'">'.$result['name'].'</a><stat>'.$count.'</stat></div>';
}
}
if ($account['status']=='moder' || $account['status']=='gm'){
echo '<a class="link" href="?act=adm">Админка форума</a>';
}
}else{
header('Location: /?');
}
down();
//Конец форума
?>