File size: 4.99Kb
<?php
// проверка наличия авторизации
if (!isset($_GET['module_id']) && !isset($_GET['m']))
{
# Перенаправляем на главную
header('Location: /');
}
# Заголовок модуля
$system['page_title'] = 'Комментарии';
# Шапка модуля
require_once(HOME .'/incfiles/header.php');
# Инициализация переменных
$m = txt($_GET['m']); // название модуля
$m_id = num($_GET['m_id']); // ID раздела модуля
// привязка к email
if (isset($_POST['message']))
{
# E-mail
$message = txt($_POST['message']);
if (empty($message)) $err .= 'Не введено сообщение<br />';
# Проверка длины логина
if (!empty($message) && (strlen_rus($message) < 3 || strlen_rus($message) > 5000)) $err .= 'Неверная длина сообщения. Допустимо от 3 до 5000 символов<br />';
# Проверка занятости логина
if (mysql_result(mysql_query("SELECT COUNT(*) FROM `comments` WHERE `text` = '". input($message) ."' AND `m` = '". $m ."' AND `m_id` = '". $m_id ."'"), 0) != 0) $err .= 'Такое сообщение уже существует<br />';
if (!isset($err))
{
# Сохраняем данные
mysql_query("INSERT INTO `comments` SET `user_id` = '$user[id]', `m` = '". input($m) ."', `m_id` = '". num($m_id) ."', `text` = '". input($message) ."', `time` = '". time() ."'");
echo '<div class="title">Добавление комментария</div>
<div class="menu">
Ваш комментарий успешно добавлен
</div>';
echo '<div class="block">
» <a href="/comments/index.php?m='. input($m) .'&m_id='. num($m_id) .'">К комментариям</a><br />
» <a href="/">На главную</a>
</div>';
# Ноги модуля
require_once(HOME .'/incfiles/footer.php');
}
}
error($err);
# Заголовок
echo '<div class="title">Список комментариев</div>';
# Кол-во комментариев
$k_comments = mysql_result(mysql_query("SELECT COUNT(*) FROM `comments` WHERE `m` = '". input($m) ."' AND `m_id` = '". num($m_id) ."'"), 0);
# Старт навигации
nav_start($k_comments, 15);
if ($k_comments == 0)
{
echo '<div class="menu">Комментариев нет</div>';
}
else
{
# Запрос для вывода массива
$sql_comments = mysql_query("SELECT * FROM `comments` WHERE `m` = '". input($m) ."' AND `m_id` = '". num($m_id) ."' ORDER BY time LIMIT $start, 15");
# Для зебры
$i = 1;
# Цикл с выводом комментариев
while ($comment = mysql_fetch_assoc($sql_comments))
{
# Определяем кратность, для зебры
if ($i % 2) $zebra = true;
else $zebra = false;
# Массив с данными пользователя
$comment_user = mysql_fetch_assoc(mysql_query("SELECT * FROM `users` WHERE `id` = '$comment[user_id]' LIMIT 1"));
echo '<div class="menu'. ($zebra == false?'_2':NULL) .'">
'. icon($comment_user['id']) .' <a href="/user/user.php?user_id='. $comment_user['id'] .'">'. nick($comment_user['id']) .'</a>'. online($comment_user['id']) .' ('. vtime($comment['time']) .')'. (isset($user)?' [<a href="/comments/index.php?m='. input($m) .'&m_id='. num($m_id) .'&reply_nick='. $comment_user['nick'] .'">отв</a>]':NULL) .'
'. (!empty($comment_user['user_motto'])?'<br /><span class="small_info">'. $comment_user['user_motto'] .'</span>':NULL) .'
<br />
'. output($comment['text']) .'
</div>';
# Для зебры
$i++;
}
# Вывод навигации
view_nav('?m='. $m .'&m_id='. $m_id);
}
# Форма написания сообщения
if (isset($user))
{
echo '<hr />
<form method="post" action="/comments/index.php?m='. input($m) .'&m_id='. num($m_id) .'">
<div class="menu">
Сообщение:<br />
<textarea name="message" rows="4" cols="20">'. (isset($_GET['reply_nick'])?output(txt($_GET['reply_nick'])) .', ':NULL) .'</textarea><br />
<input type="submit" value="Отправить" />
</div>
</form>';
}
# Навигация
echo '<div class="block">
'. (isset($user)?'» <a href="/pages/bbcode.php">Список тегов</a><br />':NULL);
// Вывод обратной ссылки на модуль
if ($m == 'news') echo '» <a href="/news/news.php?news_id='. num($m_id) .'">Вернуться к новости</a><br />';
echo '» <a href="/">На главную</a>
</div>';
# Ноги модуля
require_once(HOME .'/incfiles/footer.php');
?>