Файл: diaries.php
Строк: 177
<?
##################################################
## Автор: -=ШАХТЕР=- # ## Сайт: http://masteram.us # ## ICQ : 46-92-90 # ## Версия 4.0 Лицензионная #
## Данная версия скрипта является БЕСПЛАТНОЙ! #
## Версия чата: voblja 4.1 LITE #
## Полная версия: 4.1 FUll #
## http://masteram.us - Закрытый клуб мастеров;) #
##################################################
require'config.php';
$align='left';
$title='Дневники';
aut();
head();
who_add(0,'enter'); // Занисываем Кто онлайн...
switch($mod){
default:
echo '<b>Онлайн-дневник</b> (блог) - отличный способ выразить себя, поделиться своими мыслями и переживаниями, и ознакомиться с творчеством других пользователей!<br /><br />';
echo '» <a href="diaries?mod=diaries">Читать записи</a>('.$db->sql_fetchfield($db->sql_query("select count(*) as num from diaries"),0).')<br />';
echo '» <a href="diaries?mod=users">Список авторов</a>('.$db->sql_fetchfield($db->sql_query("select count(*) as num from users where diaries>'0'"),0).')<dl></dl>';
echo '» <a href="diaries?mod=my">Мой дневник</a>('.$db->sql_fetchfield($db->sql_query("select count(*) as num from diaries where user_id = '$user[id]'"),0).')<br />';
break;
case 'diaries':
if (empty($user['max'])) $user['max']=10;
$max = $user['max'];
$k_post=$db->sql_fetchfield($db->sql_query("select count(*) as num from diaries"),0);
$k_page=k_page($k_post,$max);
$page=page($k_page);
$start=$max*$page-$max;
$r = $db->sql_query ("Select * from diaries order by vote desc,chit desc LIMIT $start, $max");
if ($k_post == 0)echo 'Записей нет...<br />';
else echo 'Записей <b>'.$k_post.'</b><dt></dt><br />';
$post_k=$start+1;
while($a = @$db->sql_fetchrow($r)){
echo links.'<a href="?mod=read&did='.$a['id'].'">'.$a['name'].'</a> ('.times($a['time']).')'.div;
echo '<small>Автор: '.user($a['user_id'],1).' / Просмотров: '.$a['chit'].' / Рейтинг: '.$a['vote'].'</small>';
echo '<dl></dl>';
}
if ($k_page>1){
echo "<dl><dt></dt></dl>";
str('?mod='.$mod.'&',$k_page,$page); // Вывод страниц
echo "<dl><dt></dt></dl>";
}
break;
case 'read':
$did = check(intval($_GET['did']));
$a = @$db->sql_fetchrow($db->sql_query ("Select * from diaries where `id` = '$did'"));
if (isset($_GET['del'])&&$user['level']>=5){
if ($db->sql_query("DELETE FROM `diaries` where `id` = '".$did."'")){
$diaries = (user_inf($a['user_id'],'diaries')-1);
$db->sql_query("UPDATE `users` SET `diaries` = '".$diaries."' WHERE `id` = '$a[user_id]';");
$db->sql_query("DELETE FROM `vote_diaries` WHERE `did` = '".$did."'"); }
header ('Location: ?mod=diaries&'.SID); exit;
}
$a['chit']++;
$db->sql_query('UPDATE `diaries` SET `chit` = "'.$a['chit'].'" WHERE `id` = "'.$did.'" LIMIT 1');
if (isset($_GET['vote'])){
if ($a['user_id']==$user[id])echo '<b>За свои записи вы не можете голосовать!</b><br />';
else{
$db->sql_query ("Select * from vote_diaries where did='".$did."' and vote_id='".$user[id]."'");
if (mysql_affected_rows()!=0){
echo $fs1;
echo "Вы уже голосовали за эту звпись! Голос не принят.<br/>";
echo $fs2;
} else {
$db->sql_query ("INSERT INTO vote_diaries (did,vote_id,znak) VALUES ('$did','$user[id]','".check(intval($_GET['vote']))."')");
header ('Location: ?mod='.$mod.'&did='.$a['id'].'&'.SID);
}
}
}
echo '<u>Запись:</u> <b>'.$a['name'].'</b>';
if($user['level']>=5)echo ' | <a href="?mod='.$mod.'&did='.$a['id'].'&del">Удалить</a>';
echo '<br /><u>Автор:</u> '.user($a['user_id'],1).' | <a href="diaries'.user_inf($a['user_id']).'">Все записи '.user($a['user_id']).'</a><br />';
echo '<u>Содержание:</u><dt></dt>';
echo esc(br(bbcode(antir($a['msg'])))).'<dt></dt>';
echo '<u>Просмотров:</u> '.$a['chit'].'<br />
<u>Рейтинг:</u> <b>'.$a['vote'].'</b><br />';
$v0=$db->sql_fetchfield($db->sql_query("select count(*) as num from vote_diaries where did = '".$did."'"),0);
$v1=$db->sql_fetchfield($db->sql_query("select count(*) as num from vote_diaries where did = '".$did."' and znak = '1'"),0);
$v2=$db->sql_fetchfield($db->sql_query("select count(*) as num from vote_diaries where did = '".$did."' and znak = '0'"),0);
$db->sql_query('UPDATE `diaries` SET `vote` = "'.($v1-$v2).'" WHERE `id` = "'.$did.'" LIMIT 1');
echo 'Голосов: <b>'.$v0.'</b><br />
Положительных: <b>'.$v1.'</b> ('.round(100-(100/($v0/$v2))).' %)<br />
Отрицательных: <b>'.$v2.'</b> ('.round(100-(100/($v0/$v1))).' %)<br />';
$db->sql_query ("Select * from vote_diaries where did='".$did."' and vote_id='".$user[id]."'");
if (mysql_affected_rows()==0&&$a['user_id']!=$user['id']){
echo '    <a href="?mod='.$mod.'&did='.$a['id'].'&vote=1"><img src="'.H.'img/plus.gif" alt="*"/> Плюс</a> | <a href="?mod='.$mod.'&did='.$a['id'].'&vote=0"> Минус<img src="'.H.'img/minus.gif" alt="*"/></a><br />';}
echo '<br /><a href="?mod=komm&did='.$a['id'].'">Комментарии</a>('.$db->sql_fetchfield($db->sql_query("select count(*) as num from diaskomm where did = '".$a['id']."'"),0).')<br />';
break;
case 'komm':
$did = check(intval($_GET['did']));
if (isset($_GET['delk'])){
if($user[level]>=5){
$db->sql_query("DELETE FROM `diaskomm` WHERE `id` = '".check(intval($_GET['delk']))."'");
}
header ('Location: ?mod='.$mod.'&did='.$did.'&'.SID);
}
if (isset($_POST['msg'])){
if (strlen2($_POST['msg'])>3){
if ($user['translit']==1)$_POST['msg'] = translit($_POST['msg']);
if ($db->sql_query ("INSERT INTO diaskomm (did,user_id,time,msg) VALUES ('$did','$user[id]','$time','".check($_POST['msg'])."')")){header ('Location: ?mod='.$mod.'&did='.$did.'&'.SID); exit;
}else echo 'Ошибка!<br />';
}
}
if (empty($user['max'])) $user['max']=10;
$max = $user['max'];
$k_post=$db->sql_fetchfield($db->sql_query("select count(*) as num from diaskomm where did = '".$did."'"),0);
$k_page=k_page($k_post,$max);
$page=page($k_page);
$start=$max*$page-$max;
$r = $db->sql_query ("Select * from diaskomm where did = '".$did."' order by time desc LIMIT $start, $max");
if ($k_post == 0)echo 'Комментариев нет<br />';
$post_k=$start+1;
while($a = @$db->sql_fetchrow($r)){
echo links.''.nik($a['user_id']).'';
if($user[level]>=5)echo '<small><a href="?mod='.$mod.'&did='.$did.'&delk='.$a['id'].'">[X]</a></small>';
echo '('.times($a['time']).')'.div;
echo text($a['msg']);
echo '<dl></dl>';
}
if ($k_page>1){
echo "<dl><dt></dt></dl>";
str('dids?mod='.$mod.'&did='.$did.'&',$k_page,$page); // Вывод страниц
echo "<br /><dl><dt></dt></dl><br />";
}
if ($ver!='wml')echo '<form action="?mod='.$mod.'&did='.$did.'&'.SID.'" method="post">';
if ($ver=='wml')echo '<br />Ваш комментарий:<br /><input name="msg'.$ref.'" maxlength="15" title="Text"/><br/>';
else echo '<br />Ваш комментарий:<br /><textarea cols="'.$user['pole2'].'" rows="'.$user['pole1'].'" name="msg"></textarea><br/><br />';
if ($ver=='wml'){
echo '<anchor title="go">Добавить<go href="?mod='.$mod.'&did='.$did.'&'.SID.'" method="post">';
echo '<postfield name="msg" value="$msg'.$ref.'"/>
</go></anchor><br /><br />';
;
}else{
echo '<input type="submit" class="ibutton" value="Добавить"/></form><br /><br />';
}
break;
case 'user':
$nk = check(intval($_GET['nk']));
$inf = $db->sql_fetchrow ($db->sql_query ("Select * from users where id='".$nk."'"));
if (!user($nk)){echo 'Такого пользователя не существует!<br />';foot();}
if (empty($user['max'])) $user['max']=10;
$max = $user['max'];
$k_post=$db->sql_fetchfield($db->sql_query("select count(*) as num from diaries where user_id = '".$inf['id']."'"),0);
$k_page=k_page($k_post,$max);
$page=page($k_page);
$start=$max*$page-$max;
$r = $db->sql_query ("Select * from diaries where user_id = '".$inf['id']."' order by time desc LIMIT $start, $max");
if ($k_post == 0)echo 'Дневник '.user($inf['id'],1).' пуст...<br />';
else echo 'Записей в дневнике у '.user($inf['id'],1).' - <b>'.$k_post.'</b><dt></dt><br />';
$post_k=$start+1;
while($a = @$db->sql_fetchrow($r)){
echo links.'<a href="?mod=read&did='.$a['id'].'">'.$a['name'].'</a> ('.times($a['time']).')'.div;
echo 'Просмотров: '.$a['chit'].' / Рейтинг: '.$a['vote'].'';
echo '<dl></dl>';
}
if ($k_page>1){
echo "<dl><dt></dt></dl>";
str('?',$k_page,$page); // Вывод страниц
echo "<dl><dt></dt></dl>";
}
break;
case 'users':
if (empty($user['max'])) $user['max']=10;
$max = $user['max'];
$k_post=$db->sql_fetchfield($db->sql_query("select count(*) as num from users where diaries>'0'"),0);
$k_page=k_page($k_post,$max);
$page=page($k_page);
$start=$max*$page-$max;
$r = $db->sql_query ("Select * from users where diaries>'0' order by diaries desc LIMIT $start, $max");
if ($k_post == 0)echo 'Писателей нет...<br />';
else echo 'Всего писателей <b>'.$k_post.'</b><dt></dt><br />';
$post_k=$start+1;
while($a = @$db->sql_fetchrow($r)){
echo links.'<a href="diaries'.user_inf($a['id']).'">'.user($a['id']).'</a> Записей: '.$a['diaries'].''.div;
echo '<dl></dl>';
}
if ($k_page>1){
echo "<dl><dt></dt></dl>";
str('?mod='.$mod.'&',$k_page,$page); // Вывод страниц
echo "<dl><dt></dt></dl>";
}
break;
case 'my':
if (isset($_GET['del'])){
if ($db->sql_query("DELETE FROM `diaries` where `id` = '".check(intval($_GET['del']))."' and `user_id` = '$user[id]'")){
$user['diaries']--;
$db->sql_query("UPDATE `users` SET `diaries` = '".$user['diaries']."' WHERE `id` = '$user[id]';");
$db->sql_query("DELETE FROM `vote_diaries` WHERE `did` = '".check(intval($_GET['del']))."'"); }
header ('Location: ?mod='.$mod.'&'.SID); exit;
}
if (empty($user['max'])) $user['max']=10;
$max = $user['max'];
$k_post=$db->sql_fetchfield($db->sql_query("select count(*) as num from diaries where user_id = '".$user['id']."'"),0);
$k_page=k_page($k_post,$max);
$page=page($k_page);
$start=$max*$page-$max;
$r = $db->sql_query ("Select * from diaries where user_id = '".$user['id']."' order by time desc LIMIT $start, $max");
if ($k_post == 0)echo 'Дневник пуст...<br />';
else echo 'Записей в дневнике <b>'.$k_post.'</b><dt></dt><br />';
$post_k=$start+1;
while($a = @$db->sql_fetchrow($r)){
echo links.'<a href="?mod=read&did='.$a['id'].'">'.$a['name'].'</a> ('.times($a['time']).') <a href="?mod='.$mod.'&del='.$a['id'].'">[Удал]</a>|<a href="?mod=edit&edit='.$a['id'].'">[Изм]</a>'.div;
echo 'Просмотров: '.$a['chit'].' / Рейтинг: '.$a['vote'].'';
echo '<dl></dl>';
}
if ($k_page>1){
echo "<dl><dt></dt></dl>";
str('?mod='.$mod.'&',$k_page,$page); // Вывод страниц
}
echo "<dl><dt></dt></dl>";
echo '<a href="?mod=add">Добавить запись</a><br />';
break;
case 'add':
if (empty($act)){
if ($ver!='wml')echo '<form action="?mod='.$mod.'&act=act&'.SID.'" method="post">';
echo 'Название:<br /><input name="name" maxlength="30" title="Название"/><br/>';
if ($ver=='wml'){
echo 'Текст:<br /><input name="msg'.$ref.'" title="Текст"/><br/>';
$chislo=rand(1000,9999);
$db->sql_query("DELETE FROM `chislo` WHERE `ip` = '".$ip."'");
$db->sql_query("INSERT INTO `chislo` (chislo,ip) values('$chislo','".$ip."')");
echo ' <b>'.$chislo.'</b><br/>Проверочный код:<br/>
<input type="text" name="code'.$ref.'" size="4" maxlength="4" title="code"/>';
echo '<br /><anchor title="go">Добавить<go href="?mod='.$mod.'&act=add&'.SID.'" method="post"><br />';
echo '<postfield name="name" value="$name"/>
<postfield name="msg" value="$msg'.$ref.'"/>
<postfield name="code" value="$code'.$ref.'"/>
</go></anchor><br />';
}else{
echo'Текст:<br /><textarea cols="'.$user['pole2'].'" rows="'.$user['pole1'].'" name="msg" ></textarea><br />';
$chislo=rand(1000,9999);
$db->sql_query("DELETE FROM `chislo` WHERE `ip` = '".$ip."'");
$db->sql_query("INSERT INTO `chislo` (chislo,ip) values('$chislo','".$ip."')");
echo ' <b>'.$chislo.'</b><br/>Проверочный код:<br/>
<input type="text" name="code" size="4" maxlength="4" title="code"/><br/>';
echo '<br /><input type="submit" class="ibutton" value="Добавить"/></form><br /><br />';
}
}else{
$name = check($_POST['name']);
$msg = check($_POST['msg']);
$_POST['code'] = check($_POST['code']);
if ($user['translit']==1)$name = translit($name);
if ($user['translit']==1)$msg = translit($msg);
if (strlen2($name)<3)$err = 'Короткое название!';
if (strlen2($msg)<10)$err = 'Короткое содержание!';
$online = $db->sql_fetchrow($db->sql_query("SELECT * FROM `chislo` WHERE `ip` = '".$ip."'"));
if($online['chislo'] != intval($_POST['code']))$err = 'Проверочный код введен неверно!';
$p = @$db->sql_fetchrow($db->sql_query(@"select * from `diaries` where name='$name' limit 1;"));
if ($name == $p['name'])$err = 'Такая запись уже есть!';
if(empty($err)){
if ($db->sql_query ("INSERT INTO diaries (user_id,name,msg,time) VALUES ('$user[id]','$name','$msg','$time')")){
$user['diaries']++;
$db->sql_query("UPDATE `users` SET `diaries` = '".$user['diaries']."' WHERE `id` = '$user[id]';");
header ('Location: ?mod=my&'.SID); exit;
}else echo 'Ошибка!';
}else echo $err;
}
break;
case 'edit':
if(!isset($_GET['edit']) && isset($_SESSION['edit']))$edit = check(intval($_SESSION['edit']));
else $edit = check(intval($_GET['edit']));
$_SESSION['edit']=check(intval($_GET['edit']));
$a = @$db->sql_fetchrow($db->sql_query ("Select * from diaries where id = '".$edit."' and `user_id` = '$user[id]'"));
if (empty($act)){
if ($ver!='wml')echo '<form action="?mod='.$mod.'&act=act&'.SID.'" method="post">';
echo 'Название:<br /><input name="name" maxlength="30" value="'.text($a[name],false,true,false,false,false).'" title="Название"/><br/>';
if ($ver=='wml'){
echo 'Текст:<br /><input name="msg'.$ref.'" title="Текст"/><br/>';
echo '<br /><anchor title="go">Изменить<go href="?mod='.$mod.'&act=add&'.SID.'" method="post"><br />';
echo '<postfield name="name" value="$name"/>
<postfield name="msg" value="$msg'.$ref.'"/>
<postfield name="code" value="$code'.$ref.'"/>
</go></anchor><br />';
}else{
echo'Текст:<br /><textarea cols="'.$user['pole2'].'" rows="'.$user['pole1'].'" name="msg" >'.text($a[msg],false,true,false,false,false).'</textarea><br />';
echo '<br /><input type="submit" class="ibutton" value="Изменить"/></form><br /><br />';
}
}else{
$name = check($_POST['name']);
$msg = check($_POST['msg']);
if ($user['translit']==1)$name = translit($name);
if ($user['translit']==1)$msg = translit($msg);
if (strlen2($name)<3)$err = 'Короткое название!';
if (strlen2($msg)<10)$err = 'Короткое содержание!';
$p = @$db->sql_fetchrow($db->sql_query(@"select * from `diaries` where name='$name' and id != '".$edit."' limit 1;"));
if ($name == $p['name'])$err = 'Такая запись уже есть!';
if(empty($err)){
if ($db->sql_query("UPDATE `diaries` SET `name` = '$name', `msg` = '$msg', `chit` = '0', `vote` = '0' WHERE `id` = '".$edit."'")&&$db->sql_query("DELETE FROM `vote_diaries` WHERE `did` = '".$edit."'")){
header ('Location: ?mod=my&'.SID); exit;
}else echo 'Ошибка!';
}else echo $err;
}
break;
}
echo '<br />';
if ($mod)echo gb.'<a href="diaries">Дневники</a>'.div;
echo gb.'<a href="'.H.'enter">Прихожая</a>'.div;
foot();
?>