Файл: minichat_by_KoT/minichat_by_KoT/privat.php
Строк: 102
<?php
##########################################
# ~ Разработка отдельных модулей ~~~~~~~ #
# ~ и написание скриптов на php (c)KoT ~ #
# ~ ICQ: 7675072 ~~~~~~~~~~~~~~~~~~~~~~~ #
# ~ Site: 4atlove.ru ~~~~~~~~~~~~~~~~~~~ #
# ~ E-mail: notefree@bk.ru ~~~~~~~~~~~~~ #
##########################################
require 'sid.php';
header("Cache-Control: no-cache");
header('Content-Type:text/html; charset=UTF-8');
require'config.php';
$link = connect_db();
list($row, $id, $ps) = check_login($link);
include 'head.php';
include 'pages.php';
whorm(0, 'letters');
echo $div1 . '<b>Приватные сообщения</b>' . $div5;
//------------------------------------//
// очистка всех писем конкретного юзверя
if (isset($_GET['del_all'])) {
if (!ctype_digit($_GET['who'])) {
header('Location: index.php?isset=403');
exit();
}
$who = (int)$_GET['who'];
$P = mysql_fetch_assoc(mysql_query("SELECT * FROM `letters` WHERE `idwho`='$row[id]' AND who='$who'"));
if (mysql_affected_rows() == 0) {
echo $bad . 'Чё, типо хакэр? =) ну-ну...' . $div5;
} else {
$del = "DELETE FROM `letters` WHERE `idwho`='$row[id]' AND `who`='$who'";
if (mysql_query($del)) {
echo $good . 'Весь приват от '.col(user_inf($who, 'user')).' очищен!' . $div5;
} else {
echo $bad . 'Произошла ошибка!<br/>' . $div5;
}
}
}
//------------------------------------//
// удаление сообщ.
if (isset($_GET['del'])) {
if (isset($_GET['x']) && !ctype_digit($_GET['x'])) {
header('Location: index.php?isset=403');
exit();
}
$x = (int)$_GET['x'];
$P = mysql_fetch_assoc(mysql_query("SELECT * FROM `letters` WHERE `idwho`='$row[id]' AND `id`='$x'"));
if (mysql_affected_rows() == 0) {
echo $bad . 'Чё, типо хакэр? =) ну-ну...' . $div5;
} else {
$del = "DELETE FROM `letters` WHERE `idwho`='$row[id]' AND `id`='$x' LIMIT 1";
if (mysql_query($del)) {
echo $good . 'Сообщение удалено!' . $div5;
} else {
echo $bad . 'Произошла ошибка!<br/>' . $div5;
}
}
}
//------------------------------------//
// новое сообщение
if (isset($_GET['send'])) {
echo $div3 . '
<form method="POST" action="privat.php?send_ok">
Кому:<br/>
<input type="text" class="text" name="nick" value="'.htmlspecialchars(addslashes($_GET['nick'])).'"/>
<br/>
Тема:<br/>
<input type="text" class="text" name="topic" value=""/>
<br/>
Сообщение:<br/>
<input type="text" class="text" name="message"/>
<br/>
<input type="submit" class="ibutton" name="send" value="Отправить"/>
</form>
' . $div5 . $div3 . '
<a href="privat.php?'.$ref.'"><b>В приват</b></a><br/>
<a href="menu.php?'.$ref.'"><b>В меню</b></a>' . $div5;
include 'foot.php';
exit();
}
//------------------------------------//
// отправка письма
if (isset($_GET['send_ok'])) {
$nick = trim(mysql_real_escape_string(check($_POST['nick'])));
if (!ctype_digit($nick)) {
if ($nick == '') $nick = 0;
$latuser = strtolower($nick);
$ruser = rus_to_k($nick);
if ($ruser == $nick) {
$select = mysql_query("SELECT * FROM `users` WHERE `latuser` = '$latuser'");
} else {
$select = mysql_query("SELECT * FROM `users` WHERE `ruser` = '$ruser'");
}
} else {
if (!ctype_digit($nick)) { header("Location: index.php?isset=403"); die; }
$select = mysql_query("SELECT * FROM `users` WHERE `id` = '$nick'");
}
if (mysql_affected_rows() == 0) {
echo $bad . 'Получатель не найден!' . $div5
. $div3 . '<a href="menu.php?'.$ref.'"><b>В меню</b></a>' . $div5;
include 'foot.php';
exit();
}
$inf = mysql_fetch_array($select);
$pr = mysql_query("SELECT * FROM `ignor` WHERE `user_id`='$id' AND `ig_id`='$nick'");
if (mysql_affected_rows() != 0) {
echo $bad . 'Пользователь '.col($inf['user']).' отправил Вас в игнор!' . $div5
. $div3 . '
<a href="privat.php?'.$ref.'"><b>В приват</b></a><br/>
<a href="menu.php?'.$ref.'"><b>В меню</b></a>' . $div5;
include 'foot.php';
exit();
}
if (!isset($_SESSION['blow_time'])) $_SESSION['blow_time'] = 0;
if ($_SESSION['blow_time'] > time()) {
echo $bad . 'Не отправляйте так часто письма!' . $div5
. $div3 . '
<a href="privat.php?'.$ref.'"><b>В приват</b></a><br/>
<a href="menu.php?'.$ref.'"><b>В меню</b></a>' . $div5;
include 'foot.php';
exit();
}
$_SESSION['blow_time'] = time() + 10;
$message = trim(mysql_real_escape_string(check($_POST['message'])));
$topic = trim(mysql_real_escape_string(check($_POST['topic'])));
$data = date('d-m-Y');
$tm = date('H:i');
$kl = mt_rand(0,99999999);
if (empty($topic)) {
echo $bad . 'Пустое поле темы!' . $div5;
} elseif (empty($message)) {
echo $bad . 'Пустое поле сообщения!' . $div5;
} else {
$send = mysql_query("INSERT INTO `letters` (`id`,`who`,`idwho`,`topic`,`message`,`data`,`time`,`read`)
VALUES ('$kl','$row[id]','".(int)$inf['id']."','$topic','$message','$data','$tm','0')");
if (isset($send)) {
echo $good . 'Сообщение успешно отправлено пользователю '.col($inf['user']).'!' . $div5;
} else {
echo $bad . 'Произошла ошибка при отправке!' . $div5;
}
}
echo $div3 . '
<a href="privat.php?'.$ref.'"><b>В приват</b></a><br/>
<a href="menu.php?'.$ref.'"><b>В меню</b></a>' . $div5;
include 'foot.php';
exit();
}
//------------------------------------//
// чтение писем
if (isset($_GET['read'])) {
if (!ctype_digit($_GET['uid'])) {
header('Location: index.php?isset=403');
exit();
}
$P = mysql_fetch_assoc(mysql_query("SELECT * FROM `letters` WHERE `idwho`='$row[id]' AND `who`='".(int)$_GET['uid']."'"));
if (mysql_affected_rows() == 0) {
echo $bad . 'Чё, типо хакэр? =) ну-ну...' . $div5;
include 'foot.php';
exit();
}
mysql_query("UPDATE `letters` SET `read` = '1' WHERE `idwho` = '$row[id]' AND `who` = '".(int)$_GET['uid']."'");
$k_post = mysql_result(mysql_query("SELECT count(*) FROM `letters` WHERE `idwho` = '$row[id]' AND `who` = '".(int)$_GET['uid']."'"),0);
$k_page = k_page($k_post, 6);
$page = page($k_page);
$start = 6 * $page - 6;
$read = mysql_query("SELECT * FROM `letters` WHERE `who` = '".(int)$_GET['uid']."' ORDER BY `time` DESC LIMIT ".abs(intval($start)).", 6");
while($r = mysql_fetch_assoc($read)) {
$d = '<b>[<a href="privat.php?del&x='.$r['id'].'">X</a>]</b>';
echo $div3 . '
' . $d . '
От: <a href="info.php?nk='.user_inf($r['who'], 'id').'"><b>' . col(user_inf($r['who'], 'user')) . '</b></a>
<br/>
Тема:<br/>
<b>' . $r['topic'] . '</b><br/>
Сообщение:<br/>
<b>' . $r['message'] . '</b><br/>
<hr/>
<small>' . $r['data'] . ', ' . $r['time'] . '</small>
<br/>
[<a href="privat.php?send&nick='.$r['who'].'">Отв.</a>]
<hr/>
' . $div5;
}
if ($k_page > 1) {
echo $other;
str('privat.php?read&uid='.$_GET['uid'].'&', $k_page, $page);
echo $div5;
}
echo $div3 . '
<a href="privat.php?'.$ref.'"><b>В приват</b></a><br/>
<a href="menu.php?'.$ref.'"><b>В меню</b></a>' . $div5;
include 'foot.php';
exit();
}
//------------------------------------//
$k_post = mysql_num_rows(mysql_query("SELECT `who` FROM `letters` WHERE `idwho` = '$row[id]' GROUP BY `who`"));
$k_page = k_page($k_post, 6);
$page = page($k_page);
$start = 6 * $page - 6;
$read = mysql_query("SELECT * FROM `letters` WHERE `idwho` = '$row[id]' GROUP BY `who` ORDER BY `who` DESC LIMIT ".abs(intval($start)).", 6");
if (mysql_affected_rows() != 0) {
echo $div3;
while($ot = mysql_fetch_assoc($read)) {
$sql_1 = mysql_result(mysql_query("SELECT count(`id`) as num FROM `letters` WHERE `who`='".(int)$ot['who']."' AND `read` = '0'"), 0);
$sql_2 = mysql_result(mysql_query("SELECT count(`id`) as num FROM `letters` WHERE `who`='".(int)$ot['who']."' AND `read` = '1'"), 0);
if ($sql_1 != 0) {
echo '<a href="privat.php?read&uid='.$ot['who'].'"><b>'.col(user_inf($ot['who'], 'user')).'</b></a> [<b>'.$sql_1.'</b>/'.$sql_2.']';
} else {
echo '<a href="privat.php?read&uid='.$ot['who'].'">'.col(user_inf($ot['who'], 'user')).'</a> ['.$sql_1.'/'.$sql_2.']';
}
echo '[<a href="privat.php?del_all&who='.$ot['who'].'">Очистить</a>]<br/>';
}
} else {
echo '<u>Приват пуст...</u><br/>';
}
echo $div5;
echo $div3 . '[<a href="privat.php?send">Новое сообщ.</a>]' . $div5;
if ($k_page > 1) {
echo $other;
str('privat.php?', $k_post, $page);
echo $div5;
}
echo $div3 . '
<a href="menu.php?'.$ref.'"><b>В меню</b></a>' . $div5;
include 'foot.php';
?>