Просмотр файла modules/user/ank_edit.php

Размер файла: 10.89Kb
  1. <?php
  2.  
  3. // проверка наличия авторизации
  4. if (!isset($user))
  5. {
  6. # Перенаправляем на главную
  7. header('Location: /');
  8. }
  9.  
  10. # Заголовок модуля
  11. $system['page_title'] = 'Управление анкетой';
  12.  
  13. # Шапка модуля
  14. require_once(HOME .'/incfiles/header.php');
  15.  
  16. // имя
  17. if (isset($_POST['user_name']))
  18. {
  19. # Фильтрация
  20. $user_name = txt($_POST['user_name']);
  21.  
  22. # Проверка длины
  23. if (!empty($user_name) && (strlen_rus($user_name) < 3 || strlen_rus($user_name) > 256)) $err .= 'Неверная длина имени. Допустимо от 3 до 256 символов<br />';
  24.  
  25. if (!isset($err))
  26. {
  27. # Сохраняем данные
  28. mysql_query("UPDATE `users` SET `user_name` = '". input($user_name) ."' WHERE `id` = '$user[id]' LIMIT 1");
  29.  
  30. # Необходимость уведомления
  31. $add_info = true;
  32. }
  33. }
  34.  
  35. // фамилия
  36. if (isset($_POST['user_surname']))
  37. {
  38. # Фильтрация
  39. $user_surname = txt($_POST['user_surname']);
  40.  
  41. # Проверка длины
  42. if (!empty($user_surname) && (strlen_rus($user_surname) < 3 || strlen_rus($user_surname) > 256)) $err .= 'Неверная длина фамилии. Допустимо от 3 до 256 символов<br />';
  43.  
  44. if (!isset($err))
  45. {
  46. # Сохраняем данные
  47. mysql_query("UPDATE `users` SET `user_surname` = '". input($user_surname) ."' WHERE `id` = '$user[id]' LIMIT 1");
  48.  
  49. # Необходимость уведомления
  50. $add_info = true;
  51. }
  52. }
  53.  
  54. // девиз
  55. if (isset($_POST['user_motto']))
  56. {
  57. # Фильтрация
  58. $user_motto = txt($_POST['user_motto']);
  59.  
  60. # Проверка длины
  61. if (!empty($user_motto) && (strlen_rus($user_motto) < 3 || strlen_rus($user_motto) > 512)) $err .= 'Неверная длина девиза. Допустимо от 3 до 512 символов<br />';
  62.  
  63. if (!isset($err))
  64. {
  65. # Сохраняем данные
  66. mysql_query("UPDATE `users` SET `user_motto` = '". input($user_motto) ."' WHERE `id` = '$user[id]' LIMIT 1");
  67.  
  68. # Необходимость уведомления
  69. $add_info = true;
  70. }
  71. }
  72.  
  73. // о себе
  74. if (isset($_POST['user_info']))
  75. {
  76. # Фильтрация
  77. $user_info = txt($_POST['user_info']);
  78.  
  79. # Проверка длины
  80. if (!empty($user_info) && (strlen_rus($user_info) < 3 || strlen_rus($user_info) > 5000)) $err .= 'Неверная длина поля о себе. Допустимо от 3 до 5000 символов<br />';
  81.  
  82. if (!isset($err))
  83. {
  84. # Сохраняем данные
  85. mysql_query("UPDATE `users` SET `user_info` = '". input($user_info) ."' WHERE `id` = '$user[id]' LIMIT 1");
  86.  
  87. # Необходимость уведомления
  88. $add_info = true;
  89. }
  90. }
  91.  
  92. // интересы
  93. if (isset($_POST['user_interest']))
  94. {
  95. # Фильтрация
  96. $user_interest = txt($_POST['user_interest']);
  97.  
  98. # Проверка длины
  99. if (!empty($user_interest) && (strlen_rus($user_interest) < 3 || strlen_rus($user_interest) > 3000)) $err .= 'Неверная длина поля интересы. Допустимо от 3 до 3000 символов<br />';
  100.  
  101. if (!isset($err))
  102. {
  103. # Сохраняем данные
  104. mysql_query("UPDATE `users` SET `user_interest` = '". input($user_interest) ."' WHERE `id` = '$user[id]' LIMIT 1");
  105.  
  106. # Необходимость уведомления
  107. $add_info = true;
  108. }
  109. }
  110.  
  111. // место жительства
  112. if (isset($_POST['user_home']))
  113. {
  114. # Фильтрация
  115. $user_home = txt($_POST['user_home']);
  116.  
  117. # Проверка длины
  118. if (!empty($user_home) && (strlen_rus($user_home) < 3 || strlen_rus($user_home) > 256)) $err .= 'Неверная длина поля место жительства. Допустимо от 3 до 256 символов<br />';
  119.  
  120. if (!isset($err))
  121. {
  122. # Сохраняем данные
  123. mysql_query("UPDATE `users` SET `user_home` = '". input($user_home) ."' WHERE `id` = '$user[id]' LIMIT 1");
  124.  
  125. # Необходимость уведомления
  126. $add_info = true;
  127. }
  128. }
  129.  
  130. // модель телефона
  131. if (isset($_POST['user_mobile']))
  132. {
  133. # Фильтрация
  134. $user_mobile = txt($_POST['user_mobile']);
  135.  
  136. # Проверка длины
  137. if (!empty($user_mobile) && (strlen_rus($user_mobile) < 3 || strlen_rus($user_mobile) > 256)) $err .= 'Неверная длина поля модель телефона. Допустимо от 3 до 256 символов<br />';
  138.  
  139. if (!isset($err))
  140. {
  141. # Сохраняем данные
  142. mysql_query("UPDATE `users` SET `user_mobile` = '". input($user_mobile) ."' WHERE `id` = '$user[id]' LIMIT 1");
  143.  
  144. # Необходимость уведомления
  145. $add_info = true;
  146. }
  147. }
  148.  
  149. // пол
  150. if (isset($_POST['pol']))
  151. {
  152. # Фильтрация
  153. $pol = num($_POST['pol']);
  154.  
  155. # Сохраняем данные
  156. mysql_query("UPDATE `users` SET `pol` = '$pol' WHERE `id` = '$user[id]' LIMIT 1");
  157.  
  158. # Необходимость уведомления
  159. $add_info = true;
  160. }
  161.  
  162. // ICQ
  163. if (isset($_POST['user_icq']))
  164. {
  165. # Фильтрация
  166. $user_icq = txt($_POST['user_icq']);
  167.  
  168. # Проверка длины
  169. if (!empty($user_icq) && (strlen($user_icq) < 3 || strlen($user_icq) > 256)) $err .= 'Неверная длина поля ICQ. Допустимо от 3 до 256 символов<br />';
  170.  
  171. if (!isset($err))
  172. {
  173. # Сохраняем данные
  174. mysql_query("UPDATE `users` SET `user_icq` = '". $user_icq ."' WHERE `id` = '$user[id]' LIMIT 1");
  175.  
  176. # Необходимость уведомления
  177. $add_info = true;
  178. }
  179. }
  180.  
  181. // сайт/блог
  182. if (isset($_POST['user_site']))
  183. {
  184. # Фильтрация
  185. $user_site = txt($_POST['user_site']);
  186.  
  187. # Проверка длины
  188. if (!empty($user_site) && (strlen($user_site) < 3 || strlen($user_site) > 256)) $err .= 'Неверная длина поля сайт/блог. Допустимо от 3 до 256 символов<br />';
  189.  
  190. if (!isset($err))
  191. {
  192. # Сохраняем данные
  193. mysql_query("UPDATE `users` SET `user_site` = '". input($user_site) ."' WHERE `id` = '$user[id]' LIMIT 1");
  194.  
  195. # Необходимость уведомления
  196. $add_info = true;
  197. }
  198. }
  199.  
  200. // дата рождения
  201. if (isset($_POST['bd_year']) && isset($_POST['bd_month']) && isset($_POST['bd_day']))
  202. {
  203. # Фильтрация
  204. $bd_year = num($_POST['bd_year']);
  205. $bd_month = num($_POST['bd_month']);
  206. $bd_day = num($_POST['bd_day']);
  207.  
  208. # Проверка длины
  209. if (!empty($user_site) && ($bd_year < 1900 || $bd_month < 1 || $bd_month > 12 || $bd_day <1 || $bd_day > 31)) $err .= 'Неверный формат даты рождения<br />';
  210.  
  211. if (!isset($err))
  212. {
  213. # Сохраняем данные
  214. mysql_query("UPDATE `users` SET `bd_year` = '$bd_year', `bd_month` = '$bd_month', `bd_day` = '$bd_day' WHERE `id` = '$user[id]' LIMIT 1");
  215.  
  216. # Необходимость уведомления
  217. $add_info = true;
  218. }
  219. }
  220.  
  221. // проверка необходимости уведомления
  222. if ($add_info == true && !isset($err))
  223. {
  224. # Выводим уведомление
  225. echo '<div class="title">Изменение анкеты</div>
  226. <div class="menu">
  227. Ваша анкета успешно изменена
  228. </div>';
  229.  
  230. echo '<div class="block">
  231. &raquo; <a href="/user/ank_edit.php">Изменение анкеты</a><br />
  232. &raquo; <a href="/user/cabinet.php">Личный кабинет</a><br />
  233. &raquo; <a href="/">На главную</a>
  234. </div>';
  235.  
  236. # Ноги модуля
  237. require_once(HOME .'/incfiles/footer.php');
  238. }
  239.  
  240. error($err);
  241.  
  242. echo '<div class="title">Управление анкетой</div>
  243. <form method="post" action="/user/ank_edit.php">
  244. <div class="menu">
  245. Имя:<br />
  246. <input type="text" name="user_name" value="'. output($user['user_name']) .'" /><br />
  247. Фамилия:<br />
  248. <input type="text" name="user_surname" value="'. output($user['user_surname']) .'" /><br />
  249. Ваш девиз:<br />
  250. <input type="text" name="user_motto" value="'. output($user['user_motto']) .'" /><br />
  251. <span class="small_info">* Отображается под вашим ником во всех разделах сайта</span><br />
  252. Ваш пол:<br />
  253. <select name="pol" size="1">
  254. <option value="0"'. ($user['pol'] == 0?' selected="selected"':NULL) .'>Не указан</option>
  255. <option value="2"'. ($user['pol'] == 2?' selected="selected"':NULL) .'>Мужской</option>
  256. <option value="1"'. ($user['pol'] == 1?' selected="selected"':NULL) .'>Женский</option>
  257. </select><br />
  258. Дата рождения:<br />
  259. <input type="text" name="bd_day" size="2" value="'. output($user['bd_day']) .'" /><input type="text" name="bd_month" size="2" value="'. output($user['bd_month']) .'" /><input type="text" name="bd_year" size="4" value="'. output($user['bd_year']) .'" /><br />
  260. О себе:<br />
  261. <textarea name="user_info" rows="4" cols="20">'. output($user['user_info']) .'</textarea><br />
  262. Ваши интересы:<br />
  263. <input type="text" name="user_interest" value="'. output($user['user_interest']) .'" /><br />
  264. <span class="small_info">* Через запятую</span><br />
  265. Место жительства:<br />
  266. <input type="text" name="user_home" value="'. output($user['user_home']) .'" /><br />
  267. <span class="small_info">* Рекомендуется указывать настоящее место жительства, так как по нему вы сможете найти своих земляков</span><br />
  268. Модель телефона:<br />
  269. <input type="text" name="user_mobile" value="'. output($user['user_mobile']) .'" /><br />
  270. ICQ:<br />
  271. <input type="text" name="user_icq" value="'. output($user['user_icq']) .'" /><br />
  272. Сайт/блог:<br />
  273. <input type="text" name="user_site" value="'. $user['user_site'] .'" /><br />
  274. <span class="small_info">* Через http://</span><br />
  275. <input type="submit" value="Сохранить" /><br />
  276. <span class="small_info">* Вы заполняете все поля по желанию, обязательных полей в анкете нет</span><br />
  277. </div>
  278. </form>';
  279.  
  280. echo '<div class="block">
  281. &raquo; <a href="/user/user.php">Просмотр анкеты</a><br />
  282. &raquo; <a href="/user/cabinet.php">Личный кабинет</a><br />
  283. &raquo; <a href="/">На главную</a>
  284. </div>';
  285.  
  286. # Ноги модуля
  287. require_once(HOME .'/incfiles/footer.php');
  288.  
  289. ?>