Просмотр файла include/ans.php

Размер файла: 16.5Kb
  1. <?
  2. $f = intval($_GET['f']);
  3. $s = intval($_GET['s']);
  4. $uid = intval($_GET['uid']);
  5.  
  6. $Aquery = mysql_query("SELECT * FROM users WHERE id=".$uid);
  7. $Aq = mysql_fetch_assoc($Aquery);
  8. $Aname = $Aq['username'];
  9.  
  10. if(!empty($uid))
  11. {
  12. $s = $Aname;
  13. }
  14.  
  15. if($status == "admin") $ip = "127.0.0.1"; else $ip = empty($_SERVER['HTTP_X_FORWARDED_FOR']) ? $_SERVER['REMOTE_ADDR'] : $_SERVER['HTTP_X_FORWARDED_FOR'] ;
  16. $ip = htmlspecialchars(sql($ip));
  17. if($status == "admin") $user = "Admin"; else $user = htmlspecialchars(sql($_SERVER['HTTP_USER_AGENT']));
  18. $query = mysql_query("SELECT themes.*, forums.name AS fname
  19. FROM themes, forums
  20. WHERE themes.id=".$f."
  21. AND themes.id_forum=forums.id");
  22. $data = mysql_fetch_assoc($query);
  23. if(mysql_num_rows($query) < 1)
  24. {
  25. if($version == "wml")
  26. {
  27. header('Content-type: text/vnd.wap.wml; charset=utf-8');
  28. header("Cache-Control: no-cache");
  29. echo(doctype("Ошибка").$tag.'
  30. Темы не существует! <br />
  31. -
  32. <a href="./?p=0&amp;v=wml&amp;sid='.$sid.'">Форумы</a> '.$tagC.'
  33. </p></card></wml>');
  34. } elseif($version == "xhtml")
  35. {
  36. header("Content-type: text/html; charset=utf-8");
  37. header("Last-Modified:".gmdate("D, d M Y H:i:s")." GMT");
  38. header("Cache-Control: no-cache, must-relative");
  39. echo('<html>
  40. <head>
  41. <title>Ошибка</title>
  42. </head>
  43. <body bgcolor="'.$style['background'].'" link="'.$style['link'].'" vlink="'.$style['link'].'" text="#000000">
  44. <table align="center" border="0" cellspacing="1" cellpadding="5" width="350">
  45. <tr><td align="center" bgcolor="'.$style['title'].'">
  46. <font color="#FFFFFF"><b>Ошибка</b></font>
  47. </td></tr>
  48. <tr><td bgcolor="'.$style['text'].'">'.$tag.'
  49. Темы не существует!
  50. '.$tagC.'</td></tr>
  51. <tr><td bgcolor="'.$style['bottom'].'">'.$tag.'
  52. <a href="./?p=0&amp;v=xhtml&amp;sid='.$sid.'">Форумы</a>
  53. '.$tagC.'</td></tr></table>
  54. </body></html>');
  55. }
  56. } elseif($data['close'] == "on")
  57. {
  58. if($version == "wml")
  59. {
  60. header('Content-type: text/vnd.wap.wml; charset=utf-8');
  61. header("Cache-Control: no-cache");
  62. echo(doctype("Ошибка").$tag.'
  63. Темы закрыта! <br />
  64.  
  65. <anchor>Назад<prev /></anchor><br />
  66. <a href="./?p=0&amp;v=wml&amp;sid='.$sid.'">Форумы</a>
  67. '.$tagC.'
  68. </p></card></wml>');
  69. } elseif($version == "xhtml")
  70. {
  71. header("Content-type: text/html; charset=utf-8");
  72. header("Last-Modified:".gmdate("D, d M Y H:i:s")." GMT");
  73. header("Cache-Control: no-cache, must-relative");
  74. echo('<html>
  75. <head>
  76. <title>Ошибка</title>
  77. </head>
  78. <body bgcolor="'.$style['background'].'" link="'.$style['link'].'" vlink="'.$style['link'].'" text="#000000">
  79. <table align="center" border="0" cellspacing="1" cellpadding="5" width="350">
  80. <tr><td align="center" bgcolor="'.$style['title'].'">
  81. <font color="#FFFFFF"><b>Ошибка</b></font>
  82. </td></tr>
  83. <tr><td bgcolor="'.$style['text'].'">'.$tag.'
  84. Тема закрыта!
  85. '.$tagC.'</td></tr>
  86. <tr><td bgcolor="'.$style['bottom'].'">'.$tag.'
  87. <a href="./?p=0&amp;v=xhtml&amp;sid='.$sid.'">Форумы</a>
  88. '.$tagC.'</td></tr></table>
  89. </body></html>');
  90. }
  91. }
  92. elseif(!$authorize)
  93. {
  94. if($version == "wml")
  95. {
  96. header('Content-type: text/vnd.wap.wml; charset=utf-8');
  97. header("Cache-Control: no-cache");
  98. echo(doctype("Ошибка").$tag.'
  99. Вы не авторизованы! <br />
  100.  
  101. <anchor>Назад<prev /></anchor><br />
  102. <a href="./?p=0&amp;v=wml&amp;sid='.$sid.'">Форумы</a>
  103. '.$tagC.'</p></card></wml>');
  104. } elseif($version == "xhtml")
  105. {
  106. header("Content-type: text/html; charset=utf-8");
  107. header("Last-Modified:".gmdate("D, d M Y H:i:s")." GMT");
  108. header("Cache-Control: no-cache, must-relative");
  109. echo('<html>
  110. <head>
  111. <title>Ошибка</title>
  112. </head>
  113. <body bgcolor="'.$style['background'].'" link="'.$style['link'].'" vlink="'.$style['link'].'" text="#000000">
  114. <table align="center" border="0" cellspacing="1" cellpadding="5" width="350">
  115. <tr><td align="center" bgcolor="'.$style['title'].'">
  116. <font color="#FFFFFF"><b>Ошибка</b></font>
  117. </td></tr>
  118. <tr><td bgcolor="'.$style['text'].'">'.$tag.'
  119. Вы не авторизованы!
  120. '.$tagC.'</td></tr>
  121. <tr><td bgcolor="'.$style['bottom'].'">'.$tag.'
  122. <a href="./?p=0&amp;v=xhtml&amp;sid='.$sid.'">Форумы</a>
  123. '.$tagC.'</td></tr>
  124. </table>
  125. </body></html>');
  126. }
  127. }
  128. elseif(ban($username, $user, $ip))
  129. {
  130. if($version == "wml")
  131. {
  132. header('Content-type: text/vnd.wap.wml; charset=utf-8');
  133. header("Cache-Control: no-cache");
  134. echo(doctype("Ошибка").$tag.'
  135. Ошибка! Вы заблокированы модератором '.$modername.'. <br />
  136. Причина: '.$banmess.'! <br />
  137. -
  138. <a href="'.$_SERVER['HTTP_REFERER'].'">Назад</a><br />
  139. <a href="./?p=0&amp;v=wml&amp;sid='.$sid.'">Форумы</a>
  140. '.$tagC.'</p></card></wml>');
  141. } elseif($version == "xhtml")
  142. {
  143. header("Content-type: text/html; charset=utf-8");
  144. header("Last-Modified:".gmdate("D, d M Y H:i:s")." GMT");
  145. header("Cache-Control: no-cache, must-relative");
  146. echo('<html>
  147. <head>
  148. <title>Ошибка</title>
  149. </head>
  150. <body bgcolor="'.$style['background'].'" link="'.$style['link'].'" vlink="'.$style['link'].'" text="#000000">
  151. <table align="center" border="0" cellspacing="1" cellpadding="5" width="350">
  152. <tr align="center" bgcolor="'.$style['title'].'"><td colspan="2">
  153. <font color="#FFFFFF"><b>Ошибка</b></font>
  154. <tr bgcolor="'.$style['text'].'"><td colspan="2">'.$tag.'Вы заблокированы модератором '.$modername.'</td></tr>
  155. <tr bgcolor="'.$style['text'].'"><td>'.$tag.'Причина:'.$tagC.'</td><td>'.$tag.$banmess.$tagC.'</td></tr>
  156. <tr bgcolor="'.$style['bottom'].'"><td colspan="2">'.$tag.'
  157. <a href="./?p=0&amp;v=xhtml&amp;sid='.$sid.'">Форумы</a>
  158. '.$tagC.'</td></tr></table>
  159. </body></html>');
  160. }
  161. }
  162. else
  163. {
  164. if(empty($_POST['ans']))
  165. {
  166. if($version == "wml")
  167. {
  168. header('Content-type: text/vnd.wap.wml; charset=utf-8');
  169. header("Cache-Control: no-cache");
  170. echo(doctype("Ответ на тему").$tag.'
  171. <b>Ответить на тему в "'.$data['fname'].'" </b><br /> <br />
  172. Логин ['.$username.']
  173. <br />
  174. Тема ['.$data['tname'].'] <br />
  175. Сообщение: <br />'.$tagC);
  176. if(!empty($s))
  177. {
  178. echo('<input type="text" name="mess'.$ref.'" value="'.$s.', " maxlength="500" /><br />');
  179. }
  180. else
  181. {
  182. echo('<input type="text" name="mess'.$ref.'" maxlength="500" /><br />');
  183. }
  184. if(is_author($f, $username) or $status == "moder" or $status == "admin")
  185. {
  186. echo($tag.'Закрыть тему:'.$tagC.'<br />
  187. <select name="closed'.$ref.'" value="0">
  188. <option value="0">Нет</option>
  189. <option value="1">Да</option>
  190. </select><br />');
  191. }
  192. echo('<anchor>[Ответить]
  193. <go href="./?p=7&amp;v=wml&amp;sid='.$sid.'&amp;f='.$f.'" method="post">
  194. <postfield name="mess" value="$(mess'.$ref.')" />');
  195. if(is_author($f, $username) or $status == "moderator" or $status == "admin")
  196. {
  197. echo('<postfield name="closed" value="$(closed'.$ref.')" />');
  198. }
  199. echo('<postfield name="ans" value="true" />
  200. </go></anchor><br />'.$tag.'
  201.  
  202. <a href="./?p=14&amp;v=wml&amp;sid='.$sid.'&amp;f=4">Смайлы</a><br />
  203. <a href="./?p=4&amp;v=wml&amp;sid='.$sid.'&amp;t='.$f.'">В тему</a><br />
  204. <a href="./?p=2&amp;v=wml&amp;sid='.$sid.'&amp;f='.$data['id_forum'].'">В «'.$data['fname'].'»</a><br />
  205. <a href="./?p=0&amp;v=wml&amp;sid='.$sid.'">Форумы</a>
  206. '.$tagC.'</p></card></wml>');
  207. } elseif($version == "xhtml")
  208. {
  209. header("Content-type: text/html; charset=utf-8");
  210. header("Last-Modified:".gmdate("D, d M Y H:i:s")." GMT");
  211. header("Cache-Control: no-cache, must-relative");
  212. echo('<html>
  213. <head>
  214. <title>Ответ на тему</title>
  215. </head>
  216. <body bgcolor="'.$style['background'].'" link="'.$style['link'].'" vlink="'.$style['link'].'" text="#000000">
  217. <form action="./?p=7&amp;v=xhtml&amp;sid='.$sid.'&amp;f='.$f.'" method="post">
  218. <table align="center" border="0" cellspacing="1" cellpadding="5" width="350">
  219. <tr><td align="center" bgcolor="'.$style['title'].'" colspan="2">
  220. <font color="#FFFFFF"><b>Ответ на тему</b></font>
  221. </td></tr>
  222. <tr bgcolor="'.$style['bottom'].'"><td colspan="2"><b>Ответить на тему в "'.$data['fname'].'"</b></td></tr>
  223. <tr bgcolor="#deebf1"><td colspan="2"></td></tr>
  224. <tr bgcolor="'.$style['text'].'"><td>'.$tag.'Имя:'.$tagC.'</td><td>'.$tag.'['.$username.']'.$tagC.'</td></tr>
  225. <tr bgcolor="'.$style['text'].'"><td>'.$tag.'Тема:'.$tagC.'</td><td>'.$tag.'[Re: '.$data['tname'].']'.$tagC.'</td></tr>
  226. <tr bgcolor="'.$style['text'].'"><td>'.$tag.'Сообщение:'.$tagC.'</td><td><textarea name="mess" cols="30" rows="5">');
  227. if(!empty($s))
  228. {
  229. echo($s.', ');
  230. }
  231. echo('</textarea></td></tr>');
  232. if(is_author($f, $username) or $status == "moderator" or $status == "admin")
  233. {
  234. echo('<tr bgcolor="'.$style['text'].'"><td nowrap>'.$tag.'Закрыть тему:'.$tagC.'</td>
  235. <td><select name="closed">
  236. <option value="0">Нет</option>
  237. <option value="1">Да</option>
  238. </select></td></tr>');
  239. }
  240. echo('
  241. <tr bgcolor="'.$style['text'].'"><td align="center" colspan="2">
  242. <input type="hidden" name="ans" value="true">
  243. <input type="submit" value="Ответить" /></td></tr>
  244. <tr bgcolor="'.$style['bottom'].'"><td colspan="2">'.$tag.'
  245. <a href="./?p=14&amp;v=xhtml&amp;sid='.$sid.'&amp;f=4">Смайлы</a><br />
  246. <a href="./?p=4&amp;v=xhtml&amp;sid='.$sid.'&amp;t='.$f.'">В тему</a><br />
  247. <a href="./?p=2&amp;v=xhtml&amp;sid='.$sid.'&amp;f='.$data['id_forum'].'">В «'.$data['fname'].'»</a><br />
  248. <a href="./?p=0&amp;v=xhtml&amp;sid='.$sid.'">Форумы</a>
  249. '.$tagC.'</td></tr></table>
  250. </form>
  251. </body></html>');
  252. }
  253. } else
  254. {
  255. $message = $_POST['mess'];
  256. if($transl == "on")
  257. {
  258. $message = translate($message);
  259. }
  260. $message = preg_replace("|[\r\n]+|", " \r\n", $message);
  261. $message = preg_replace("|[\n]+|", "\n", $message);
  262. $message = sql(htmlspecialchars(trim(chop(cutString($message, 1024)))));
  263. $message = preg_replace_callback("|&lt;(\d{1,20})&gt;|", "smile", $message);
  264.  
  265. if($status == "admin" or $status == "moderator")
  266. {
  267. $message= preg_replace("|\[b\](.*)\[/b\]|i", "<b>\\1</b>", $message);
  268. $message = preg_replace("|\[i\](.*)\[/i\]|i", "<i>\\1</i>", $message);
  269. }
  270.  
  271. if(strpos($message, "http://") !== false)
  272. {
  273. $message = preg_replace("|(http://[^\s]+)|i", "<a href=\"go/?\\1\">\\1</a>", $message);
  274. }
  275. else if(strpos($message, "HTTP://") !== false)
  276. {
  277. $message = preg_replace("|(HTTP://[^\s]+)|i", "<a href=\"go/?\\1\">\\1</a>", $message);
  278. }
  279. else
  280. {
  281. $message = preg_replace("|\[urltag=(.*)\](.*)\[/url\]|is", "<a href=\"go/?http://\\1\">\\2</a>", $message);
  282. }
  283. ////////////////////////////////////////////////////////Антифлуд
  284. $R = mysql_query("SELECT * FROM `posts`
  285. WHERE `name`='".$username."'
  286. AND `id_theme`=".$f);
  287. $aR = mysql_fetch_array($R);
  288. $postR=$aR['post'];
  289. ////////////////////////////////////////////////////////
  290. if(!preg_match("|^[-a-z0-9а-яё_!?№#;:%^&*()+=~\|\\\/ @.,\[\]\{\}\"'\`<>\s]*$|iu", $message) or empty($message))
  291. {
  292. if($version == "wml")
  293. {
  294. header('Content-type: text/vnd.wap.wml; charset=utf-8');
  295. header("Cache-Control: no-cache");
  296. echo(doctype("Ответ на тему").$tag.'
  297. <b>Ответить в тему в "'.$data['fname'].'"</b><br /> <br />
  298. <b>Поле "Сообщение" пустое или содержит плохие символы! </b><br />
  299. Имя: ['.$username.'] <br />
  300. Тема: ['.$data['tname'].'] <br />
  301. Сообщение: '.$tagC.'<br />');
  302. if(!empty($s))
  303. {
  304. echo('<input type="text" name="mess'.$ref.'" value="'.$s.', " maxlength="600" /><br />');
  305. }
  306. else
  307. {
  308. echo('<input type="text" name="mess'.$ref.'" maxlength="600" /><br />');
  309. }
  310. if(is_author($f, $username) or $status == "moderator" or $status == "admin")
  311. {
  312. echo($tag.'Закрыть тему:'.$tagC.'<br />
  313. <select name="closed'.$ref.'" value="0">
  314. <option value="0">Нет</option>
  315. <option value="1">Да</option>
  316. </select><br />');
  317. }
  318. echo('
  319. <anchor>[Ответить]
  320. <go href="./?p=7&amp;v=wml&amp;sid='.$sid.'&amp;f='.$f.'" method="post">
  321. <postfield name="mess" value="$(mess'.$ref.')" />');
  322. if(is_author($f, $username) or $status == "moderator" or $status == "admin")
  323. {
  324. echo('<postfield name="closed" value="$(closed'.$ref.')" />');
  325. }
  326. echo('
  327. <postfield name="ans" value="true" />
  328. </go></anchor><br />
  329. '.$tag.'
  330. <a href="./?p=14&amp;v=wml&amp;sid='.$sid.'&amp;f=4">Смайлы</a><br />
  331. <a href="./?p=4&amp;v=wml&amp;sid='.$sid.'&amp;t='.$f.'">В тему</a><br />
  332. <a href="./?p=2&amp;v=wml&amp;sid='.$sid.'&amp;f='.$data['id_forum'].'">В «'.$data['fname'].'»</a><br />
  333. <a href="./?p=0&amp;v=wml&amp;sid='.$sid.'">Форумы</a>
  334. '.$tagC.'</p></card></wml>');
  335. } elseif($version == "xhtml")
  336. {
  337. header("Content-type: text/html; charset=utf-8");
  338. header("Last-Modified:".gmdate("D, d M Y H:i:s")." GMT");
  339. header("Cache-Control: no-cache, must-relative");
  340. echo('<html>
  341. <head>
  342. <title>Ответ на тему</title>
  343. </head>
  344. <body bgcolor="'.$style['background'].'" link="'.$style['link'].'" vlink="'.$style['link'].'" text="#000000">
  345. <form action="./?p=7&amp;v=xhtml&amp;sid='.$sid.'&amp;f='.$f.'" method="post">
  346. <table align="center" border="0" cellspacing="1" cellpadding="5" width="350">
  347. <tr><td align="center" bgcolor="'.$style['title'].'" colspan="2">
  348. <font color="#FFFFFF"><b>Ответ на тему</b></font>
  349. </td></tr>
  350. <tr bgcolor="'.$style['bottom'].'"><td colspan="2">
  351. <b>Ответить на тему в "'.$data['fname'].'"</b>
  352. </td></tr>
  353. <tr bgcolor="#deebf1"><td colspan="2">'.$tag.'<b>Ошибка!!! Поле "Сообщение" пустое или содержит плохие символы!</b>'.$tagC.'</td></tr>
  354. <tr bgcolor="'.$style['text'].'"><td>'.$tag.'Имя:'.$tagC.'</td><td>'.$tag.'['.$username.']'.$tagC.'</td></tr>
  355. <tr bgcolor="'.$style['text'].'"><td>'.$tag.'Тема:'.$tagC.'</td><td>'.$tag.'[Re: '.$data['tname'].']'.$tagC.'</td></tr>
  356. <tr bgcolor="'.$style['text'].'"><td>'.$tag.'Сообщение:'.$tagC.'</td><td><textarea name="mess" cols="30" rows="5">');
  357. if(!empty($s))
  358. {
  359. echo($s.', ');
  360. }
  361. echo('</textarea></td></tr>');
  362. if(is_author($f, $username) or $status == "moderator" or $status == "admin")
  363. {
  364. echo('<tr bgcolor="'.$style['text'].'"><td nowrap>Закрыть тему:</td>
  365. <td><select name="closed">
  366. <option value="0">Нет</option>
  367. <option value="1">Да</option>
  368. </select></td></tr>');
  369. }
  370. echo('
  371. <tr bgcolor="'.$style['text'].'"><td align="center" colspan="2">
  372. <input type="hidden" name="ans" value="true">
  373. <input type="submit" value="Ответить" /></td></tr>
  374. <tr bgcolor="'.$style['bottom'].'"><td colspan="2">'.$tag.'
  375. <a href="./?p=14&amp;v=xhtml&amp;sid='.$sid.'&amp;f=4">Смайлы</a><br />
  376. <a href="./?p=4&amp;v=xhtml&amp;sid='.$sid.'&amp;t='.$f.'">В тему</a><br />
  377. <a href="./?p=2&amp;v=xhtml&amp;sid='.$sid.'&amp;f='.$data['id_forum'].'">В «'.$data['fname'].'»</a><br />
  378. <a href="./?p=0&amp;v=xhtml&amp;sid='.$sid.'">Форумы</a>
  379. '.$tagC.'</td></tr></table>
  380. </form>
  381. </body></html>');
  382. }
  383. }
  384. elseif(strtolower($postR) == strtolower($message))
  385. {
  386. header("Location: ".$forumdir."p=2&f=".$data['id_forum']."&v=".$version."&sid=".$sid);
  387. }
  388. else
  389. {
  390. if(mysql_result(
  391. mysql_query("SELECT COUNT(*)
  392. FROM `posts`
  393. WHERE `name` = '$username'
  394. AND `id_theme` = ".$f."
  395. AND `crc32` = ".crc32($message)), 0))
  396. {
  397. header("Location: ".$forumdir."p=2&f=".$data['id_forum']."&v=".$version."&sid=".$sid);
  398. exit();
  399. }
  400. if(($status == "admin" or $status == "moderator" or is_author($f, $username)) and $_POST['closed'] == "1")
  401. {
  402. mysql_query("UPDATE `themes`
  403. SET `close`='on' WHERE `id`=".$f);
  404. }
  405. mysql_query("UPDATE `themes`
  406. SET `time`=".time()." WHERE `id`=".$f);
  407. mysql_query("INSERT INTO `posts` VALUES(0, '".$username."', '".$message."', ".crc32($message).", ".$f.", ".time().", '".$user."', '".$ip."')");
  408. include_once("us.php");
  409. $idd = $infoUserRows['id'];
  410. if($data['id_forum'] == "1")
  411. {
  412. mysql_query("UPDATE `wcab` SET `balans`=`balans`+'0.1' WHERE `id_user`='".$idd."'");
  413. }
  414. elseif($data['id_forum'] != "20" && $data['id_forum'] != "16" && $data['id_forum'] != "19" && $data['id_forum'] != "18")
  415. {
  416. mysql_query("UPDATE `wcab` SET `balans`=`balans`+'0.3' WHERE `id_user`='".$idd."'");
  417. }
  418. header("Location: ".$forumdir."p=2&f=".$data['id_forum']."&v=".$version."&sid=".$sid);
  419.  
  420. }
  421. }
  422. }
  423. ?>