Файл: soo/forum/inc/addpost.php
Строк: 113
<?
$uchas = mysql_result(mysql_query("SELECT COUNT(uid) FROM `community_user_incomm` where `uid` = '$user[id]' AND `activate` = 1 AND `cid` = '$soo'"),0);
if($comm['status']==2 or $comm['status']==1 && $uchas){
$tem = @$db->sql_fetchrow($q1 = @$db->sql_query("select * from `comm_forum_t` where `comm_id` = '$soo' and `id`='".$fid."' ;" ));
if (mysql_affected_rows() == 0){
echo '<b>Такой темы не существует! Возможно она была удалена модератором.</b>';
echo '<br />';
echo gb.'<a href="/soo/forum/?soo='.$soo.'">Форум</a>'.div;
foot();
}
$page = check($_GET['page']);
$t_name = $tem ['name'];
$f = $tem ['f_id'];
$r = $tem ['r_id'];
$for = @$db->sql_fetchrow($db->sql_query( "select * from `comm_forum_f` where comm_id = '$soo' and id='$f';" ));
$raz = @$db->sql_fetchrow($db->sql_query( "select * from `comm_forum_r` where comm_id = '$soo' and id='$r';" ));
echo '<a href="/soo/forum/?soo='.$soo.'">Форумы</a>|<a href="razdel_'.$f.'">'.$for[name].'</a>';
echo '|<a href="temes_'.$r.'?soo='.$soo.'">'.$raz[name].'</a>|<a href="tema_'.$fid.'_'.$page.'?soo='.$soo.'">'.$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->sql_query ("Select * from users where id='".$nk."'");
if (mysql_affected_rows() == 0){
echo "Юзер не найден. Возможно ник удалён.<br/>";
break;
}
$inf = $db->sql_fetchrow ($select);
$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.'&&soo='.$soo.''.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.'&soo='.$soo.''.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->sql_fetchrow($db->sql_query( "select * from `comm_forum_msg` where comm_id = '$soo' and user_id='".$user['id']."' and r_id = '".$tem['r_id']."'" ));
$query = @$db->sql_query("SELECT * FROM `comm_forum_msg` WHERE `comm_id` = '$soo' and `user_id` = '".$user['id']."' and t_id = '".$fid."' AND `time` > '".($time-$set['for_time_p'])."';");
if(@mysql_affected_rows() > 0)$er = 2;
if ($prev['msg']==$msg)$er = 3;
///// Добавление сообщения
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=/soo/forum/tema_'.$fid.'_end?soo='.$soo.']'.$tem['name'].'[/url].';
$db->sql_query ("INSERT INTO privat (user,user_id,to_user,to_id,time,msg) VALUES ('$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=/soo/forum/tema_'.$fid.'_end?soo='.$soo.']'.$tem['name'].'[/url].';
$db->sql_query ("INSERT INTO privat (user,user_id,to_user,to_id,time,msg) VALUES ('$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);
if ($db->sql_query ("INSERT INTO comm_forum_msg (comm_id,f_id,r_id,t_id,user_id,msg,time,privat,file,fname,fsize) VALUES ('".$soo."','$tem[f_id]','$tem[r_id]','".$fid."','$user[id]','$msg','$time','$privat','$name','$down','$dsize')") && $db->sql_query("UPDATE `comm_forum_t` SET `time` = '$time' WHERE `comm_id` = '".$soo."' and `id` = '".$fid."'")){
postsf_add();
echo "Ваше сообщение добавленно!";
header("Location: tema_".$fid."_end?soo='$soo'".SID);
}
else
{
echo "Произошла ошибка...";
}
}else{
$er = 5;
echo $er;
//header("Location: tema_".$fid."_end?er=$er&".SID);
header("Location: ./tema_".$fid."_end?er=".$er."&soo='$soo'".SID);
}
}else echo $er;
}else{
if(empty($er)){
if ($db->sql_query ("INSERT INTO comm_forum_msg (comm_id,f_id,r_id,t_id,user_id,msg,time,privat) VALUES ('$soo','$tem[f_id]','$tem[r_id]','".$fid."','$user[id]','$msg','$time','$privat')") && $db->sql_query("UPDATE `comm_forum_t` SET `time` = '$time' WHERE `id` = '".$fid."'")){
postsf_add();
echo "Ваше сообщение добавленно!";
header("Location: tema_".$fid."_end?soo=".$soo."".SID);
}else echo "Oшибка!";
}else{echo $er; header("Location: ./tema_".$fid."_end?soo='$soo'"&"er=".$er."&".SID); }
}
}
echo '<br /><dl><dt></dt></dl>';
}
?>