Файл: gguest.php
Строк: 231
<?php
include "header/config.inc.php";
include "header/function.inc.php";
include "header/gheader.inc.php";
include "header/connect.inc.php";
include "header/click-club.class.php";
If (!isset($_GET['log'])) define("anybody","true");
include "header/enter.inc.php";
@mysql_query("update `".prefix."users` set `mesto`='В гостевой' where `id` = '".$_USER['id']."'");
If (!isset($_GET['mode']) || !ereg("^[a-z0-9_-]{1,15}$",$_GET['mode'])) $mode=false; else $mode=$_GET['mode'];
switch ($mode){
case 'admin':
If ($_USER['admin'] || $_USER['moder']){
If (!isset($_GET['smode']) || !ereg("^[a-z0-9_-]{1,15}$",$_GET['smode'])) $smode='adminka'; else $smode=$_GET['smode'];
echo 'Админ-панель гостевой книги<br/>---<br/>';
switch($smode){
case 'fdelu':
If (
(!isset($_GET['user']) || !$click_club->is_login($_GET['user']))
&&
(!isset($_POST['user']) || !$click_club->is_login($_POST['user']))
){
echo 'Пользователь не выбран или логин введён неверно!';
break;
}
If (isset($_GET['user'])) $login=$_GET['user']; else $login=$_POST['user'];
If (!isset($_GET['ok'])){
echo 'Вы точно хотите удалить все сообщения пользователя <u>'.$login.'</u>?<br/>
<a href="'.$_zapros.'mode=admin">Нет</a> / <a href="'.$_zapros.'mode=admin&smode=fdelu&user='.$login.'&ok=ok">Да</a>';
break;
}
//удаляем
$result=@mysql_query("DELETE FROM `".prefix."guest` WHERE `who`='".$login."'");
If (!$result){
echo 'Ошибка запроса к бд...';
break;
}
echo 'Все сообщения пользователя '.$login.' удалены!';
break;
case 'delu':
echo 'Удалить все сообщения пользователя:<br/>
<form method="post" action="'.$_zapros.'mode=admin&smode=fdelu">
<input type="text" name="login" maxlength="'.lenght_login.'" value=""/><br/>
<input value="OK" type="submit"/></form>
';
break;
case 'delall':
If (!isset($_GET['ok'])){
echo 'Вы точно хотите удалить все сообщения в гостевой книге?<br/>
<a href="'.$_zapros.'mode=admin">Нет</a> / <a href="'.$_zapros.'mode=admin&smode=delall&ok=ok">Да</a>';
break;
}
//удаляем
$result=@mysql_query("DELETE FROM `".prefix."guest`");
If (!$result){
echo 'Ошибка запроса к бд...';
break;
}
echo 'Все сообщения удалены!';
break;
case 'adminka':
default:
echo '»<a href="'.$_zapros.'mode=admin&smode=delu">Удалить все сообщения пользователя</a><br/>';
echo '»<a href="'.$_zapros.'mode=admin&smode=delall">Удалить все сообщения в гостевой книге</a>';
break;
}
break;
}
else {
echo 'Вы не администратор!<br/>';
}
break;
case 'do':
If (!isset($_GET['id']) || !is_numeric($_GET['id'])){
echo 'не задан ID сообщения';
break;
}
If ($_USER['admin'] || $_USER['moder']){
If (!isset($_GET['smode']) || !ereg("^[a-z0-9_-]{1,15}$",$_GET['smode'])) $smode='info'; else $smode=$_GET['smode'];
$id=$_GET['id'];
(int)$id;
switch ($smode){
case 'del':
$result=@mysql_query("DELETE FROM `".prefix."guest` WHERE `id`='".$id."'");
If (!$result){
echo 'Ошибка запроса к бд...';
break;
}
header("Location: guest.php".$_zapros);
break;
case 'fdel':
$result=@mysql_query("SELECT `who` FROM `".prefix."guest` WHERE `id`='".$id."'");
If (!$result){
echo 'Ошибка запроса к бд...';
break;
}
If (mysql_num_rows($result)!=1){
echo 'Сообщение не найдено';
break;
}
$login=mysql_result($result,0,'who');
echo 'Вы точно хотите удалить все сообщения пользователя <u>'.$login.'</u>?<br/>
<a href="'.$_zapros.'">Нет</a> / <a href="'.$_zapros.'mode=admin&smode=fdelu&user='.$login.'&ok=ok">Да</a>';
break;
case 'ans':
$result=@mysql_query("SELECT * FROM `".prefix."guest` WHERE `id`='".$id."'");
If (!$result){
echo 'Ошибка запроса к бд...';
break;
}
If (mysql_num_rows($result)!=1){
echo 'Сообщение не найдено';
break;
}
$ans=mysql_result($result,0,'answer');
echo 'Текст:<br/>
<form method="post" action="'.$_zapros.'mode=do&smode=ansok&id='.$id.'">
<input type="text" name="text" maxlength="'.lenght_text.'" value="'.$ans.'"/><br/>
<input value="OK" type="submit"/></form>
';
break;
case 'ansok':
If (!isset($_POST['text'])) {
echo 'Ответ не введён!';
break;
}
$text = mysql_real_escape_string(htmlspecialchars($_POST['text']));
$strlen=strlen($text);
If ($strlen<min_text || $strlen>lenght_text){
echo 'Сообщение слишком длинное/короткое';
break;
}
$result = mysql_query("UPDATE `".prefix."guest` SET `answer`='".$text."' , `nans`='".$_USER['login']."' WHERE `id`='".$id."'");
If (!$result){
echo 'Ошибка запроса к бд...';
break;
}
echo 'Ответ добавлен!';
break;
case 'red':
$result = mysql_query("SELECT * FROM `".prefix."guest` WHERE `id`='".$id."'");
If (!$result){
echo 'Ошибка запроса к бд...';
break;
}
If (mysql_num_rows($result)!=1){
echo 'Сообщение не найдено';
break;
}
$ans=mysql_result($result,0,'text');
echo 'Текст:<br/>
<form method="post" action="'.$_zapros.'mode=do&smode=redok&id='.$id.'">
<textarea cols="30" rows="5" name="text" maxlength="'.lenght_text.'">'.$ans.'</textarea><br/>
<input value="OK" type="submit"/></form>';
break;
case 'redok':
If (!isset($_POST['text'])) {
echo 'Сообщения не введено!';
break;
}
$text = mysql_real_escape_string(htmlspecialchars($_POST['text']));
$strlen=strlen($text);
If ($strlen<min_text || $strlen>lenght_text){
echo 'Сообщение слишком длинное/короткое';
break;
}
$result = mysql_query("UPDATE `".prefix."guest` SET `text`='".$text."', `izmts`='".time()."', `izmkol`=`izmkol`+1, `izmwho`='".$_USER['login']."' WHERE `id`='".$id."'");
If (!$result){
echo 'Ошибка запроса к бд...';
break;
}
header("Location: guest.php".$_zapros);
break;
case 'info':
default:
$result=@mysql_query("SELECT * FROM `".prefix."guest` WHERE `id`='".$id."'");
If (!$result){
echo 'Ошибка запроса к бд...';
break;
}
If (mysql_num_rows($result)!=1){
echo 'Сообщение не найдено';
break;
}
echo '<div class="header_rek"><b>Общая информация о сообщении</b></div><br/>
ID сообщения: <b>'.mysql_result($result,0,'id').'</b><br/>
Текст сообщения: <b>'.mysql_result($result,0,'text').'</b><br/>
Сообщение написано: <b>'.date("d.m.Y H:i:s",mysql_result($result,0,'ts')).'</b><br/>
Написал: <b>'.mysql_result($result,0,'who').'</b>
<font color="white"><hr></font>
img src="dir.gif" alt="."><a href="'.$_zapros.'mode=do&smode=red&id='.$id.'">Изменить</a><br/>
img src="dir.gif" alt="."><a href="'.$_zapros.'mode=do&smode=ans&id='.$id.'">Ответить</a><br/>
img src="dir.gif" alt="."><a href="'.$_zapros.'mode=do&smode=del&id='.$id.'">Удалить</a><br/>
img src="dir.gif" alt="."><<a href="'.$_zapros.'mode=do&smode=fdel&id='.$id.'">Удалить ВСЕ сообщения этого пользователя</a>';
break;
}
break;
}
else {
echo 'Вы не администратор!<br/>';
}
break;
case 'write':
If (!$_enter){
echo 'Для того чтобы писать сообщения, вы должны войти в систему!<br/>';
break;
}
If (!isset($_POST['text'])) {
echo 'Текст:<br/>
<form method="post" action="'.$_zapros.'mode=write">
<textarea cols="30" rows="5" name="text" maxlength="'.lenght_text.'"></textarea><br/>
<input value="Написать" type="submit"/></form>';
break;
}
$text = htmlspecialchars(trim(mysql_real_escape_string($_POST['text'])));
$strlen = strlen($text);
If ($strlen<min_text || $strlen>lenght_text){
echo 'Сообщение слишком длинное/короткое';
break;
}
$result=@mysql_query("INSERT into `".prefix."guest`
(`who`,`text`,`ts`,`ua`)
values
('".$_USER['login']."','".$text."','".time()."','".short_agent."')
");
If (!$result){
echo 'Ошибка запроса к бд...';
break;
}
header("Location: guest.php".$_zapros);
break;
case 'bbkod':
include "bbcode.txt";
break;
case 'smiles':
include "smile.txt";
break;
case 'izm':
If (!isset($_GET['id']) || !is_numeric($_GET['id'])){
echo 'Не задан ID сообщения';
break;
}
If (!isset($_GET['wmode']) || !ereg("^[a-z0-9_-]{1,15}$",$_GET['wmode'])) $wmode='red'; else $wmode=$_GET['wmode'];
$id=$_GET['id'];
(int)$id;
switch ($wmode){
case 'red':
$result = mysql_query("SELECT * FROM `".prefix."guest` WHERE `id`='".$id."' && `who`='".$_USER['login']."'");
If (!$result){
echo 'Ошибка запроса к бд...';
break;
}
If (mysql_num_rows($result)!=1){
echo 'Сообщение не найдено';
break;
}
$ans=mysql_result($result,0,'text');
echo 'Текст:<br/>
<form method="post" action="'.$_zapros.'mode=izm&wmode=redok&id='.$id.'">
<textarea cols="30" rows="5" name="text" maxlength="'.lenght_text.'">'.$ans.'</textarea><br/>
<input value="OK" type="submit"/></form>';
break;
case 'redok':
If (!isset($_POST['text'])) {
echo 'Сообщения не введено!';
break;
}
$text = mysql_real_escape_string(htmlspecialchars($_POST['text']));
$strlen=strlen($text);
If ($strlen<min_text || $strlen>lenght_text){
echo 'Сообщение слишком длинное/короткое';
break;
}
$result = mysql_query("UPDATE `".prefix."guest` SET `text`='".$text."', `izmts`='".time()."', `izmkol`=`izmkol`+1, `izmwho`='".$_USER['login']."' WHERE `id`='".$id."' && `who`='".$_USER['login']."'");
If (!$result){
echo 'Ошибка запроса к бд...';
break;
}
header("Location: guest.php".$_zapros);
break;
}
break;
case false:
default:
echo '<div class="header_rek"><b>Гостевая книга</b></div>
<a href="guest.php'.$_zapros.'mode=bbkod">BB Коды</a> | <a href="guest.php'.$_zapros.'mode=smiles">Смайлы</a><br/><br/>
<a href="'.$_zapros.'mode=write"><b>Добавить</b></a><br/>
<font color="white"><hr></font>';
If (!isset($_GET['page']) || !is_numeric($_GET['page'])) $page=1; else { $page=$_GET['page']; (int)$page;}
$result = mysql_query("SELECT * FROM `".prefix."guest` ORDER by `ts` desc LIMIT ".(($page-1)*num_best_on_page).",".(num_best_on_page+1));
If (!$result){
echo 'Ошибка запроса к бд...';
break;
}
$next=false;
$num=mysql_num_rows($result);
If ($num>0){
If ($num<=num_best_on_page) $read=$num; else {
$read=num_best_on_page;
$next=true;
}
for ($i=0;$i<$read;$i++){
$text = mysql_result($result,$i,'text');
$text = bbcode($text);
$text = smile($text);
$text = antilink($text);
$text = stripslashes($text);
$ans = mysql_result($result,$i,'answer');
$ans = bbcode($ans);
$ans = smile($ans);
$ans = stripslashes($ans);
$login = mysql_result($result,$i,'who');
$id = mysql_result($result,$i,'id');
$izmts = mysql_result($result,$i,'izmts');
$izmkol = mysql_result($result,$i,'izmkol');
$izmkto = mysql_result($result,$i,'izmwho');
$nif = mysql_query("SELECT * FROM `".prefix."users` WHERE `login`='".$login."'");
$zak = mysql_fetch_array($nif);
$moder=$zak['moder'];
$admin=$zak['admin'];
$time = time();
$online = ($zak['time'] > ($time - 300));
switch($zak['time'])
{
case $online: $online='[<img src="http://wap.sasisa.ru/chat/on.gif">]'; break;
default: $online='[<img src="http://wap.sasisa.ru/chat/inv.gif">]'; break;
}
if($moder=='1') $lon ="<font color='blue'>".$login."</font>";
if($admin=='1') $lon ="<font color='red'>".$login."</font>";
if ($zak['moder']=='0' && $zak['admin']=='0') $lon ="<font color='black'>".$login."</font>";
echo '<a href="inf.php'.$_zapros.'&logg='.$login.'">';
echo '<b>'.$lon.'</b></a> '.$online.' '.date("d.m.Y H:i:s",mysql_result($result,$i,'ts'));
If ($_USER['login']==$login){
echo '[<a href="'.$_zapros.'mode=izm&wmode=red&id='.$id.'">Редактировать</a>]';
}
If ($_USER['admin'] || $_USER['moder']){
echo ' [<a href="'.$_zapros.'mode=do&id='.$id.'">Действия</a>]';
}
echo '<br/>'.$text.'<br/>';
If (!is_NULL($izmkto) && $izmkto!=''){
echo '---<br/>
Изм. : <b>'.$izmkol.'</b> раз. Последний раз: <b>'.date("H:i d.m.Y",$izmts).'</b> ник <b>'.$izmkto.'</b><br/>';
}
$nans = mysql_result($result,$i,'nans');
If (!is_NULL($ans) && $ans!=''){
echo '<font color="red"><b>Ответил '.$nans.'</b></font>: '.$ans.'<br/>';
}
echo '<font color="white"><hr></font>';
}
} else echo 'Нет сообщений<br/>';
If ($page>1) echo '<a href="'.$_zapros.'mode=read&page='.($page-1).'">Назад</a> ';
If ($next) echo '<a href="'.$_zapros.'mode=read&page='.($page+1).'">Далее</a>';
$result=@mysql_query("SELECT `who` FROM `".prefix."guest` ");
If (!$result){
echo 'Ошибка запроса к бд...';
break;
}
echo '<br/>Сообщений: '.mysql_num_rows($result);
break;
}
If ($_USER['admin'] || $_USER['moder'])
echo '<br/>---<br/>»<a href="'.$_zapros.'mode=admin">Админка гости</a>';
include "header/gend.inc.php";
?>