Файл: forum/forum/inc/addpost.php
Строк: 125
<?php
##########################################
## Автор PITBULL##
## icq 647732 ##
## mail mobilas91@gmail.com ##
## запрещено торговать скриптом ##
##########################################
$tem = DB::run()->queryFetch("select * from `forum_t` where `id`=? ",array($fid));
if (mysql_affected_rows() == 0){
echo '<b>Такой темы не существует! Возможно она была удалена модератором.</b>';
echo '<br />';
echo gb.'<a href="./">Форум</a>'.div;
foot();
}
$page = check($_GET['page']);
$t_name = $tem ['name'];
$f = $tem ['f_id'];
$r = $tem ['r_id'];
if($user['level']<$tem['level']){
header('Location: /index.php?');
}
if(isset($_GET['close'])){
if(DB::run()->query("UPDATE `forum_t` SET `close` = ? WHERE `id` = ?",array(1,$fid))){
$msg = 'Закрыто';
DB::run()-> query ("INSERT INTO forum_msg
(f_id,r_id,t_id,user_id,time) VALUES
(?,?,?,?,?,?)",array($tem['f_id'],$tem['r_id'],$fid,$user['id'],$msg,$time));
DB::run()->query("UPDATE `forum_t` SET `time` = ? WHERE `id` =?",array($time,$fid));
header('location:/forum/tema_'.$fid.'');
}
}
$for = DB::run()->queryFetch( "select * from `forum_f` where id=?",array($f) );
$raz =DB::run()->queryFetch( "select * from `forum_r` where id=?",array($r) );
echo '<a href="./">Форумы</a>|<a href="razdel_'.$f.'">'.$for[name].'</a>';
echo '|<a href="temes_'.$r.'">'.$raz[name].'</a>|<a href="tema_'.$fid.'_'.$page.'">'.$tem['name'].'</a><br /><dl><dt></dt></dl>';
if ($tem['close']==1)
{echo 'Тема <b>'.$tem['name'].'</b> закрыта!'; exit;}
if (isset($_GET['nk'])){
$nk = intval($_GET['nk']);
$select = DB::run()->query("Select * from users where id=?",array($nk));
if (mysql_affected_rows() == 0){
echo "Юзер не найден. Возможно ник удалён.<br/>";
break;
}
$inf = $select->fetch();
$nk1 = '&nk='.$nk.'';
}
$act = check($_POST['act']);
if (empty($act)){
if (isset($nk)) echo 'Сообщение для <b>'.$inf['user'].'</b><br />';
if ($user['formf']==1){
if ($ver!='wml') echo '<form method="post" enctype="multipart/form-data" action="?act=add'.$nk1.'&fid='.$fid.'&'.SID.'">';
}else{
if ($ver!='wml') echo '<form action="?act=add'.$nk1.'&fid='.$fid.'&'.SID.'" method="post">';
}
if ($ver=='wml')echo 'Сообщение:<br /><input name="msg'.$ref.'" title="Сообщение"/><br/>';
else echo 'Сообщение:<br /><textarea cols="'.$user['pole2'].'" rows="'.$user['pole1'].'" name="msg"></textarea><br />';
if (isset($nk)){echo '<input type="checkbox" name="privat" value="1"/> Приватно<br/>';
echo '<input type="checkbox" name="opprivat" value="1"/>Оповестить по привату<br/>';
}
if ($user['formf']==1&&$ver!='wml')echo '<b>Прикрепить файл (max '.round($set['size_for']/1024,1).' мб.):</b><br/>
<input name="file" type="file" size="20"/><br/>';
if ($ver=='wml'){
echo '<br /><anchor title="go">Добавить<go href="?act=add'.$nk1.'&fid='.$fid.'&'.SID.'" method="post">';
echo '<postfield name="msg" value="$msg'.$ref.'"/>
<postfield name="act" value="act"/>
<postfield name="privat" value="$privat"/>
<postfield name="opprivat" value="$opprivat"/>
</go></anchor>';
echo '<br/>';
}else{
echo '<input name="act" type="hidden" value="act"/>';
echo "<br /><input type="submit" class="ibutton" value="Добавить"/></form><br /><br />";
}
if (isset($nk)) echo "<b><a href="".H.$nk."">Анкета ".nik($inf['user'])."</a></b><br /> ";
echo '<br /><a href="tema_'.$fid.'_'.$page.'"><b>В тему</b></a><br />';
}else{
$msg = check($_POST['msg']);
if ($user['translit']==1)$msg = translit($msg);
$privat = check(intval($_POST['privat']));
$opprivat = check(intval($_POST['opprivat']));
$msg=substr($msg, 0, $set['size_vvod_for']);
if (strlen2($msg)<3)$er = 1;
$prev = DB::run()->queryFetch( "select * from `forum_msg` where user_id=? and r_id = ?" ,array($user['id'],$tem['r_id']));
$query = DB::run()->query("SELECT * FROM `forum_msg` WHERE `user_id` = ? and t_id = ? AND `time` > ?",array($user['id'],$fid,$time-$set['for_time_p']));
//if(@mysql_affected_rows() > 0)$er = 2;
if ($prev['msg']==$msg)$er = 3;
///// Добавление cообщения
if (isset($nk)){
$msg = "[b]".$inf['user']."[/b], ".$msg."";
if (isset($privat)&&$privat!=0)$privat = $nk;
if(empty($er)){
if ($opprivat==1){
if ($user['sex']==1)$sex = 'ответил'; else $sex = 'ответила';
$msgp = 'Пользователь [b]'.$user['user'].'[/b] '.$sex.' на ваше сообщение в теме [url=/forum/tema_'.$fid.'_end]'.$tem['name'].'[/url].';
DB::run()-> query ("INSERT INTO lenta
(user,user_id,to_user,to_id,time,msg) VALUES
(?,?,?,?,?,?)",array($user_system,0,user($nk),user_inf($nk),$time,$msgp));
}
}
if ($tem ['privat']==1){
if ($user['sex']==1)$sex = 'оставил'; else $sex = 'оставила';
$msgp = 'Пользователь [b]'.$user['user'].'[/b] '.$sex.' сообщение в вашей теме [url=/forum/tema_'.$fid.'_end]'.$tem['name'].'[/url].';
DB::run()->query ("INSERT INTO lenta
(user,user_id,to_user,to_id,time,msg) VALUES
(?,?,?,?,?,?)",
array($user_system,0,user($tem['user_id']),user_inf($tem['user_id']),$time,$msgp));
}
}
// Добавление файла
$limit_razm=$set['size_for']*1024;
$dsize=$_FILES['file']['size']; //размер
$down=$_FILES['file']['name']; //имя
if($down!=''){
if($dsize>$limit_razm)$er = 4;
if(empty($er)){
$razr = array('.gif', '.jpg', '.jpeg', '.bmp', '.png', '.wbmp', '.pic', '.ani', '.pco','.zip', '.rar', '.cab', '.sis', '.sisx', '.jar', '.jad','.sis', '.sisx', '.thm', '.sdt', '.nth', '.mtf', '.col', '.scs', '.utz','.3gp', '.mp4', '.avi', '.mpeg', '.rm','.mmf', '.mid', '.amr', '.mp3', '.wav', '.aac', '.seq', '.vox', '.dxm', '.imy', '.emy', '.pmd', '.rng');
$fnames=$_FILES['file']['name']; //имя
if ((preg_match("/.php/i", $fnames)) or (preg_match("/.pl/i", $fnames)) or ($fnames == ".htaccess")){echo '<b>Недопустимое расширение файла!</b><br />'; exit;}
$ext = strtolower(strrchr($_FILES['file']['name'], '.'));
if(in_array($ext, $razr)) $gi='ok';
if(empty($gi))$gi='no';
if($gi=='ok')
{
$name = "".time().$ext."";
$down = check($down);
$name = check($name);
if (!copy($_FILES['file']['tmp_name'], "../files/forum/".$name)){echo 'Файл не загружен! Неизвестная ошибка!'; exit;}
@chmod("$name", 0644);
@chmod("../files/forum/$name", 0644);
$level=$tem['level'];
if (DB::run()->query("INSERT INTO forum_msg (f_id,r_id,t_id,user_id,msg,time,privat,file,fname,level) VALUES
(?,?,?,?,?,?,?,?,?,?)",
array($tem['f_id'],$tem['r_id'],$fid,$user['id'],$msg,$time,$privat,$name,$down,$tem['level'])) &&
DB::run()->query("UPDATE `forum_t` SET `time` = '$time' WHERE `id` =? ",array($fid))){
postsf_add();
echo "Ваше сообщение добавленно!";
header("Location: tema_".$fid."_end?".SID);
}
else
{
echo "Произошла ошибка...";
}
}else{
$er = 5;
echo $er;
//header("Location: tema_".$fid."_end?er=$er&".SID);
header("Location: ./tema_".$fid."_end?er=".$er."&".SID);
}
}else echo $er;
}else{
if(empty($er)){
if (DB::run()->query("INSERT INTO forum_msg (f_id,r_id,t_id,user_id,msg,time,privat,level) VALUES
(?,?,?,?,?,?,?,?)",
array($tem['f_id'],$tem['r_id'],$fid,$user['id'],$msg,$time,$privat,$tem['level']))
&& DB::run()->query ("UPDATE `forum_t` SET `time` = '$time' WHERE `id` = ?",array($fid))){
postsf_add();
echo "Ваше сообщение добавленно!";
header("Location: tema_".$fid."_end?".SID);
}else echo "Oшибка!";
}else{echo $er; header("Location: ./tema_".$fid."_end?er=".$er."&".SID); }
}
}
echo '<br /><dl><dt></dt></dl>';
?>