Просмотр файла cab/index.php

Размер файла: 10.83Kb
  1. <?
  2. include('../core/core.php');
  3. include(BASEDIR.INC.'func.php');
  4. include(BASEDIR.INC.'session.php');
  5. include(BASEDIR.INC.'session_user.php');
  6. $mode = htmlspecialchars($_GET['mode']);
  7. include(BASEDIR.INC.'head.php');
  8. show_title('Объявления');
  9. echo '<div class="razdel">Объявления</div>';
  10. switch ($mode):
  11. case 'index':
  12. echo'<div class="menu">Разделы</div>';
  13. define('TOPAGE',10);
  14. $page=(int)$_GET['page'];
  15. $q=mysql_result(mysql_query("SELECT COUNT(*) FROM `cab`"),0);
  16. $total = intval(($q - 1) / TOPAGE) + 1;
  17. if(empty($page) or $page < 0) $page = 1;
  18. if($page > $total) $page = $total;
  19. $start = $page * TOPAGE -TOPAGE;
  20.  
  21. $g=mysql_query("SELECT * FROM `cab` LIMIT $start,".TOPAGE."");
  22. while($u=mysql_fetch_array($g)){
  23. echo'<div class="menu">';
  24. echo'<a href="?mode=cab&id='.$u['id'].'">'.$u['name'].'</a> ['.index_to('cab_msg','id_cab',$u['id']).']<hr>'.$u['opi'].'';
  25. echo'</div>';
  26. }
  27. if ($page != $total) $nextpage = ' <a href="?mode=index&page='. ($page + 1) .'">Далее</a>';
  28. if($page - 1 > 0) $pageback = '<a href="?mode=index&page='. ($page - 1) .'">Назад</a> ';
  29. if($q == 0){echo'<div class="menu">Категории еще не созданы!</div>'; }
  30. if(is_admin(array(101,102,103))){echo'<div class="menu"><a href="?mode=admin">Управление</a></div>';}
  31. echo''.$pageback.' '.$nextpage.'';
  32. break;
  33. case 'cab':
  34. $id=abs(mysql_real_escape_string(htmlspecialchars($_GET['id'])));
  35. $cab = mysql_query('SELECT * FROM cab WHERE id = "'.$id.'"');
  36. $cab = mysql_fetch_assoc($cab);
  37. if(!empty($cab['id'])){
  38. define('TOPAGE',10);
  39. $page=(int)$_GET['page'];
  40. $q=mysql_result(mysql_query("SELECT COUNT(*) FROM `cab_msg` WHERE `id_cab` = '".$id."'"),0);
  41. $total = intval(($q - 1) / TOPAGE) + 1;
  42. if(empty($page) or $page < 0) $page = 1;
  43. if($page > $total) $page = $total;
  44. $start = $page * TOPAGE -TOPAGE;
  45.  
  46. $g=mysql_query("SELECT * FROM `cab_msg` WHERE `id_cab` = '".$id."' LIMIT $start,".TOPAGE."");
  47. while($u=mysql_fetch_array($g)){
  48. echo'<div class="menu">';
  49. echo'<img src="'.BASEDIR.''.IMG.'cab.png"> <a href="?mode=see_cab&id='.$u['id'].'">'.$u['name_cab'].'</a> ';
  50. if(is_admin(array(101,102,103))){echo'[<a href="?mode=admin_d&id='.$u['id'].'">X</a>]'; }
  51. echo'</div>';
  52. }
  53. if ($page != $total) $nextpage = ' <a href="?mode=cab&id='.$id.'&page='. ($page + 1) .'">Далее</a>';
  54. if($page - 1 > 0) $pageback = '<a href="?mode=cab&id='.$id.'&page='. ($page - 1) .'">Назад</a> ';
  55. if($q == 0){echo'<div class="menu">Объявления еще не созданы!</div>'; }
  56.  
  57. echo'<div class="menu">';
  58. echo'<a href="?mode=new_cab&id='.$id.'">Создать oбъявлениe</a>';
  59. echo'</div>';
  60. echo''.$pageback.' '.$nextpage.'';
  61. } else {echo'<div class="menu">Категории не существует</div>';}
  62. break;
  63. case 'new_cab':
  64. $id=abs(mysql_real_escape_string(htmlspecialchars($_GET['id'])));
  65. $cab = mysql_query('SELECT * FROM cab WHERE id = "'.$id.'"');
  66. $cab = mysql_fetch_assoc($cab);
  67. echo'<div class="menu">';
  68. if($id == !NULL && !empty($cab['id'])){
  69. echo'
  70. <form action="?mode=add&id='.$id.'" method="post">
  71. <div style="overflow: hidden"><div style="float: left">Название обьявления</div><div align="right"> <input name="name_cab" type="text" size="41" maxlength="100" /></div></div>
  72. <div style="overflow: hidden"><div style="float: left">Описание(полное)<br />До 1000 сим.</div><div align="right"> <textarea name="opi" cols="40" rows="5"></textarea></div></div>
  73. <hr>
  74. <div style="overflow: hidden"><div style="float: left">Ваше имя</div><div align="right"> <input name="name" type="text" maxlength="20" /></div></div>
  75. <div style="overflow: hidden"><div style="float: left">Ваша Фамилия</div><div align="right"> <input name="famil" type="text" size="25" maxlength="40" /></div></div>
  76. <hr>
  77. <div style="overflow: hidden"><div style="float: left">ICQ</div><div align="right"> <input name="icq" type="text" maxlength="9" /></div></div>
  78. <div style="overflow: hidden"><div style="float: left">Email</div><div align="right"> <input name="email" type="text" size="25" maxlength="50" /></div></div>
  79. <div style="overflow: hidden"><div style="float: left">Site</div><div align="right"> <input name="site" type="text" size="25" maxlength="50" value="http://"/></div></div>
  80. <hr>
  81. <div style="overflow: hidden"><div style="float: left">Размещаем на</div><div align="right"> <select name="time">
  82. <option value="15">15 дней</option>
  83. <option value="30">30 дней</option>
  84. <option value="60">60 дней</option>
  85. <option value="90">90 дней</option>
  86. <option value="120">120 дней</option>
  87. </select></div></div>
  88. <hr>
  89. <div style="overflow: hidden"><div style="float: left">Bвeдитe Koд:<br /><img src="/inc/capatcha.php"/></div><div align="right"> <input type="text" name="code" size="7" maxlength="6"></div></div>
  90.  
  91.  
  92. <hr>
  93. <center><input name="" type="submit" value="Разместить" /></center>
  94. </form>
  95. ';
  96. } else {echo'<div class="menu">Категории не существует</div>';}
  97. echo'</div>';
  98. break;
  99. case 'add':
  100. echo'<div class="menu">';
  101. $id=abs(mysql_real_escape_string(htmlspecialchars($_GET['id'])));
  102. $name_cab = check($_POST['name_cab']);
  103. $opi = check($_POST['opi']);
  104. $name = check($_POST['name']);
  105. $famil = check($_POST['famil']);
  106. $icq = check($_POST['icq']);
  107. $email = check($_POST['email']);
  108. $site = check($_POST['site']);
  109. $code = check($_POST['code']);
  110. $time = check($_POST['time']);
  111. if(!empty($name_cab) && !empty($opi) && !empty($famil) && !empty($icq) && !empty($email) && !empty($site) && !empty($name)){
  112. if (utf_strlen($name_cab) >= 7) {
  113. if (utf_strlen($opi) >= 5 && utf_strlen($opi) < 1000) {
  114. if(preg_match("|^[-0-9a-z_\.]+@[-0-9a-z_^\.]+\.[a-z]{2,6}$|i", $email)){
  115. if (preg_match('#^http://([а-яa-z0-9_\-\.])+(\.([а-яa-z0-9\/])+)+$#u', $site)) {
  116. if ($code == $_SESSION['getkode']) {
  117. $tim = time()+ (86400 * $time);
  118. $opi = no_br($opi);
  119. $opi = antimat($opi);
  120. $opi = smiles($opi);
  121. mysql_query('INSERT INTO `cab_msg`(`id_cab`, `name_cab`, `name`, `famil`, `opi`, `icq`, `site`, `mail`, `time`) VALUES ("'.$id.'","'.$name_cab.'","'.$name.'","'.$famil.'","'.$opi.'","'.$icq.'","'.$site.'","'.$email.'","'.$tim.'")');
  122. $cab = mysql_query('SELECT * FROM cab_msg DESC LIMIT 1');
  123. $cab = mysql_fetch_assoc($cab);
  124. header ('location: ?mode=see_cab&id='.($cab['id'] + 1).'');
  125. } else { echo'Ошибка! Проверочное число не совпало с данными на картинке!'; }
  126. } else { echo'Адрес сайт введен некоректно!'; }
  127. } else {echo'Email введен некоректно!';}
  128. } else { echo'Ошибка! Слишком длинное или короткое сообщение!'; }
  129. } else { echo'Неинформативное название темы'; }
  130. } else { echo'Все поля должны быть заполнены!'; }
  131. echo'</div>';
  132. break;
  133. case 'see_cab':
  134. echo'<div class="menu">';
  135. $id=abs(mysql_real_escape_string(htmlspecialchars($_GET['id'])));
  136. $cab = mysql_query('SELECT * FROM cab_msg WHERE id = "'.$id.'"');
  137. $cab = mysql_fetch_assoc($cab);
  138. if($id == !NULL && !empty($cab['id'])){
  139. echo''.$cab['name_cab'].'<hr>'.$cab['opi'].'<hr>Контактные данные:<br />
  140. ICQ: '.$cab['icq'].'<br />
  141. Email: '.$cab['mail'].'<br />
  142. Site: <a href="/pages/go_url.php?url='.$cab['site'].'">'.$cab['site'].'</a><br />
  143. ФИ: '.$cab['name'].' '.$cab['famil'].'';
  144. } else {echo'<div class="menu">Обьявления не существует</div>';}
  145. echo'</div>';
  146. break;
  147. case 'admin':
  148. echo'<div class="menu">';
  149. if(is_admin(array(101,102,103))){
  150. echo'Список категорий: (<a href="?mode=admin_add">Добавить</a>)</div>';
  151. $t = mysql_query("select * from `cab`");
  152. while($u=mysql_fetch_array($t)){
  153. echo'<div class="menu">'.$u['name'].'<hr>'.$u['opi'].'<hr> [<a href="?mode=admin_dell&id='.$u['id'].'">удал</a>][<a href="?mode=admin_edit&id='.$u['id'].'">изм</a>]</div>';
  154. }
  155. } else { echo'Вход разрешем только Админ составу!'; }
  156. echo'</div>';
  157. break;
  158. case 'admin_dell':
  159. echo'<div class="menu">';
  160. $id = abs(htmlspecialchars($_GET['id']));
  161. if(is_admin(array(101,102,103))){
  162. if($id == NULL){ echo'Сообщение не выбрано!</div>'; } else {
  163. //---------Удаляем под темы ---------//
  164. mysql_query('DELETE FROM `cab_msg` WHERE `id_cab` = "'.$id.'"');
  165. //--------Удаляем основную тему-----//
  166. mysql_query('DELETE FROM `cab` WHERE `id` = "'.$id.'"');// удаление главной темы
  167. header("Location: ?mode=admin");
  168. }
  169. } else {echo'Вход разрешен только админ составу!</div>';}
  170. break;
  171. case 'admin_edit':
  172. echo'<div class="menu">';
  173. $id = abs(htmlspecialchars($_GET['id']));
  174. $name = htmlspecialchars($_POST['name']);
  175. $opi = htmlspecialchars($_POST['opi']);
  176. if(is_admin(array(101,102,103))){
  177. if($name == ''){
  178. $z = mysql_query("select * from `cab` where `id` = '".$id."'");
  179. $z = mysql_fetch_assoc($z);
  180. echo'<form action="?mode=admin_edit&id='.$id.'" method="post">';
  181. echo'<input name="name" type="text" value="'.$z['name'].'" size="30" maxlength="100" />';
  182. echo'<input name="opi" type="text" value="'.$z['opi'].'" size="30" maxlength="100" /><br />';
  183. echo'<input type="submit" name="submit_1" id="submit" value="Изменить!">
  184. </form>';
  185. echo'</div>';
  186. } else {
  187. mysql_query('UPDATE `cab` SET `name`="'.$name.'",`opi`="'.$opi.'" WHERE `id` = "'.$id.'"');
  188. header("Location: ?mode=admin");
  189. }
  190. } else {echo'Вход разрешен только админ составу!</div>';}
  191. break;
  192. case 'admin_add':
  193. echo'<div class="menu">';
  194. if(is_admin(array(101,102,103))){
  195. $name = htmlspecialchars($_POST['name']);
  196. $opi = htmlspecialchars($_POST['opi']);
  197. if($name == NULL){
  198. echo'<form action="?mode=admin_add" method="post">';
  199. echo'Название:<br /><input name="name" type="text" value="" size="30" maxlength="100" /><br />';
  200. echo'Описание:<br /><input name="opi" type="text" value="" size="30" maxlength="100" /><br />';
  201. echo'<input type="submit" name="submit_1" id="submit" value="Добавить!">
  202. </form>';
  203. echo'</div>';
  204. } else {
  205. mysql_query('INSERT INTO `cab`(`name`,`opi`) VALUES ("'.$name.'","'.$opi.'")');
  206. header("Location: ?mode=admin");
  207. }
  208. } else {echo'Вход разрешен только админ составу!</div>';}
  209. break;
  210. case 'admin_d':
  211. echo'<div class="menu">';
  212. if(is_admin(array(101,102,103))){
  213. $id = abs(htmlspecialchars($_GET['id']));
  214. mysql_query('DELETE FROM `cab_msg` WHERE `id` = "'.$id.'"');
  215. } else {echo'Вход разрешен только админ составу!</div>';}
  216. break;
  217. default:
  218. header ('location: ?mode=index');
  219. endswitch;
  220. echo'<div class="menu"><a href="/">На главную</a></div>';
  221. include(BASEDIR.INC.'foot.php');
  222. ?>