Файл: php-zona.ru/modules/zc/comm.php
Строк: 70
<?php
$title = 'Комментарии';
include_once($_SERVER["DOCUMENT_ROOT"].'/style/head.php');
$_GET['id'] = abs(intval($_GET['id']));
if($db->query("SELECT `id` FROM `zc_file` WHERE `id`='".$_GET['id']."'")->num_rows==0){
error('Файла не существует!');
}
$antiflood = $db->query("SELECT `zc_comm` FROM `antiflood` WHERE `id`='1'");
switch ($_GET['act']) {
default:
if(isset($_POST['ok'])){
mode('user');
$_POST['comm'] = guard($db->real_escape_string($_POST['comm']));
$tim = time()-$antiflood['zc_comm'];
if(empty($_POST['comm'])){
error('Введите текст комментария!');
}elseif(mb_strlen($_POST['comm'])<2 or mb_strlen($_POST['comm'])>4000){
error('Текст комментрия дожен содержать в себе не менее двух и не более 4000 символов!');
}elseif($db->query("SELECT `id` FROM `zc_comm` WHERE `us`='".$user['id']."' AND `time`>='".$tim."'")->num_rows!=0){
error('Комментарии к файлам в загруз-центре можно оставлять не чаще чем раз в '.$antiflood['zc_comm'].' секунд.');
}
$db->query("INSERT INTO `zc_comm` SET `file`='".$_GET['id']."', `us`='".$user['id']."', `time`='".time()."', `text`='".$_POST['comm']."'");
$p = $db->query("SELECT `us` FROM `zc_file` WHERE `id`='".$_GET['id']."'")->fetch_assoc();
if($p['us']!=$user['id']){
$db->query("INSERT INTO `notifications` SET `id_us`='".$p['us']."', `time`='".time()."', `section`='zc_comm', `sender`='".$user['id']."', `text`='написал в комментариях к вашему [url=http://".$_SERVER["HTTP_HOST"]."/zc/file/".$_GET['id']."]файлу[/url]'");
}
success('Комментарий успешно добавлен!');
}
?>
<div class="title">
Комментарии к файлу
</div>
<?
if(isset($user['id'])){
?>
<div class="text">
<a href="/others/bb">BB-коды</a> <a href="/others/smile">Смайлы</a><br/>
<form action="" method="POST">
Текст комментария:<br/>
<textarea name="comm"></textarea><br/>
<input type="submit" name="ok" value="Добавить">
</form>
</div>
<?
}else{
?>
<div class="error">Комментарии могут оставлять только авторизованные пользователи</div>
<?
}
$nav=new navig("SELECT * FROM `zc_comm` WHERE `file`='".$_GET['id']."'");
$q = $db->query("SELECT * FROM `zc_comm` WHERE `file`='".$_GET['id']."' ORDER BY `id` DESC LIMIT ".$nav->start.", ".$nav->nstr);
while($c = $q->fetch_assoc()){
?>
<div class="section">
<?=nick($c['us'])?> <?=times($c['time'])?><br/>
<?=output($c['text'])?>
<?
if($c['us']==$user['id'] or $user['level']>=1){
?>
<br/>
<a href="/zc/comm/<?=$_GET['id']?>?comm=<?=$c['id']?>&act=del">[Уд.]</a> | <a href="/zc/comm/<?=$_GET['id']?>?comm=<?=$c['id']?>&act=edit">[Ред.]</a>
<?
}
if(isset($user['id']) AND $user['id']!=$c['us']){
?>
| <a href="/zc/comm/<?=$_GET['id']?>?comm=<?=$c['id']?>&act=reply">[Отв.]</a>
<?
}
?>
</div>
<?
}
?>
<div class="nvgstr">
<?
$nav->panel();
?>
</div>
<div class="nvg"><a href="/zc/file/<?=$_GET['id']?>">Вернуться к файлу</a></div>
<?
break;
case 'del':
$_GET['comm'] = abs(intval($_GET['comm']));
mode('user');
if($db->query("SELECT * FROM `zc_comm` WHERE `id`='".$_GET['comm']."'")->num_rows==0){
error('Комментария не существует!');
}
$co = $db->query("SELECT * FROM `zc_comm` WHERE `id`='".$_GET['comm']."'")->fetch_assoc();
if($user['id']!=$co['us'] AND $user['level']<1){
error('У вас нет доступа к данной странице!');
}
if(isset($_POST['yes'])){
$db->query("DELETE FROM `zc_comm` WHERE `id`='".$_GET['comm']."'");
header('location:/zc/comm/'.$_GET['id']);
}elseif(isset($_POST['no'])){
header('location:/zc/comm/'.$_GET['id']);
}
?>
<div class="text">
<form action="" method="POST">
Вы действительно хотите удалить данный комментарий?<br/>
<div class="quote">
<?=$co['text']?>
</div>
<input type="submit" name="yes" value="Да"> <input type="submit" name="no" value="Нет">
</form>
</div>
<div class="nvg">
<a href="/zc/comm/<?=$_GET['id']?>">Вернуться к комментариям</a><br/>
<a href="/zc/file/<?=$_GET['id']?>">Вернуться к файлу</a>
</div>
<?
break;
case 'edit':
$_GET['comm'] = abs(intval($_GET['comm']));
mode('user');
if($db->query("SELECT * FROM `zc_comm` WHERE `id`='".$_GET['comm']."'")->num_rows==0){
error('Комментария не существует!');
}
$co = $db->query("SELECT * FROM `zc_comm` WHERE `id`='".$_GET['comm']."'")->fetch_assoc();
if($user['id']!=$co['us'] AND $user['level']<1){
error('У вас нет доступа к данной странице!');
}
if(isset($_POST['ok'])){
$_POST['comm'] = guard($db->real_escape_string($_POST['comm']));
$db->query("UPDATE `zc_comm` SET `text`='".$_POST['comm']."' WHERE `id`='".$_GET['comm']."'");
success('Комментарий успешно отредактирован!');
}
?>
<div class="text">
<a href="/others/bb">BB-коды</a> <a href="/others/smile">Смайлы</a><br/>
<form action="" method="POST">
Текст комментария:<br/>
<textarea name="comm"><?=$co['text']?></textarea><br/>
<input type="submit" name="ok" value="Сохранить">
</form>
</div>
<div class="nvg">
<a href="/zc/comm/<?=$_GET['id']?>">Вернуться к комментариям</a><br/>
<a href="/zc/file/<?=$_GET['id']?>">Вернуться к файлу</a>
</div>
<?
break;
case 'reply':
mode('user');
$_GET['comm'] = abs(intval($_GET['comm']));
if($db->query("SELECT `id` FROM `zc_comm` WHERE `id`='".$_GET['comm']."'")->num_rows==0){
error('Комментария не существует!');
}
$co = $db->query("SELECT * FROM `zc_comm` WHERE `id`='".$_GET['comm']."'")->fetch_assoc();
if($co['us']==$user['id']){
error('Самому себе отвечать запрещено!');
}
$us = $db->query("SELECT * FROM `users` WHERE `id`='".$co['us']."'")->fetch_assoc();
if(isset($_POST['ok'])){
$_POST['comm'] = guard($db->real_escape_string($_POST['comm']));
if(empty($_POST['comm'])){
error('Введите текст комментария!');
}elseif(mb_strlen($_POST['comm'])<2 or mb_strlen($_POST['comm'])>4000){
error('Текст комментрия дожен содержать в себе не менее двух и не более 4000 символов!');
}
$db->query("INSERT INTO `zc_comm` SET `file`='".$_GET['id']."', `us`='".$user['id']."', `time`='".time()."', `text`='".$_POST['comm']."'");
$db->query("INSERT INTO `notifications` SET `id_us`='".$us['id']."', `time`='".time()."', `section`='zc_comm', `sender`='".$user['id']."', `text`='ответил вам в [url=http://".$_SERVER["HTTP_HOST"]."/zc/comm/".$_GET['id']."]комментариях[/url] к [url=http://".$_SERVER["HTTP_HOST"]."/zc/file/".$_GET['id']."]файлу[/url]'");
header('location:/zc/comm/'.$_GET['id']);
}
?>
<div class="title">Ответ на комментарий</div>
<div class="text">
<a href="/others/bb">BB-коды</a> <a href="/others/smile">Смайлы</a><br/>
<form action="" method="POST">
<textarea name="comm"><?=$us['nick']?>, </textarea><br/>
<input type="submit" name="ok" value="Ответить">
</form>
</div>
<?
break;
}
include_once($_SERVER["DOCUMENT_ROOT"].'/style/foot.php');
?>