Advertisement
BedOmar

а

Jul 24th, 2016
122
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
PHP 9.23 KB | None | 0 0
  1. <? session_start(); ?>
  2. <html>
  3. <head>
  4.     <meta charset="utf-8">
  5.     <script src="https://ajax.googleapis.com/ajax/libs/jquery/3.0.0/jquery.min.js"></script>
  6.     <meta http-equiv='Content-Type' content='text/html; charset=utf-8'>
  7.     <title>
  8.         КОШТ
  9.     </title>
  10.     <link rel="stylesheet" href="../../styles.css">
  11.     <link rel="shortcut icon" href="../../img/icon.ico">
  12.     <link rel="stylesheet" href="../../css/admin_panel.css">
  13.  <script type="text/javascript" src="jquery.js"></script>
  14. <script type="text/javascript" src="jquery.maskedinput-1.2.2.js"></script>
  15. <script type="text/javascript" src="jquery.pstrength-min.1.2.js">
  16. </script>
  17. <script type="text/javascript">
  18. $(function() {
  19. $('.password').pstrength();
  20. });
  21. </script>  
  22.                 <script type="text/javascript">
  23.                     function withoutCyr(input) {
  24.                         var value = input.value;
  25.                         var re = /а|б|в|г|д|е|ё|є|ж|з|и|ї|ё|к|л|м|н|о|п|р|с|т|у|ф|х|ц|ч|ш|щ|ъ|ы|ь|э|ю|я/gi;
  26.                         if (re.test(value)) {
  27.                             value = value.replace(re, '');
  28.                             input.value = value;
  29.                             confirm('Пароль не може містити кирилицю');
  30.                         }
  31.                     }
  32.                 </script>
  33. </head>
  34. <style>
  35. *, *::before, *::after{
  36.     padding: 0;
  37.     margin: 0;
  38.     box-sizing: border-box;
  39. }
  40.  
  41. p{
  42.     margin:15px;
  43.     font-weight: 500;
  44.     position:relative
  45. }
  46.  
  47. input:valid + span::after{
  48.     content: url(../../img/check_mark.png);
  49. }
  50.  
  51. input:invalid + span::after{
  52.     content: url(../../img/cross.png);
  53.     color: red;
  54.     font-size: 12px;
  55. }
  56.  
  57.  
  58. </style>
  59. <body>
  60.  <script type="text/javascript">
  61.  
  62. jQuery(function($) {
  63.  
  64. $.mask.definitions['~']='[+-]';
  65.  
  66. $('#date').mask('99/99/9999');
  67.  
  68. $('#phone').mask('+38(999) 999-9999');
  69.  
  70.  
  71. });</script>
  72. <center>
  73.     <div class='all'>
  74.         <div class='top'>
  75.             <p class='shad'><a href='index.php'><IMG style='float: left;' src='../img/logo.png' align='middle' width='350' height='200'></a> KOSHT.COM.UA</p>
  76.             <p><font size='5' color='#87CEEB'>Клуб Обдарованих Школярів Тернополя</font></p>
  77.             <table align='center' width='100%'>
  78.                 <tr>
  79.                     <td class='category'><a href='../'>Головна</a></td>
  80.                     <td class='category'><a href='../history/'>Історія</a></td>
  81.                     <td class='category'><a href='../olimiada/'>Олімпіада</a></td>
  82.                     <td class='category'><a href='../'>Форум</a></td>
  83.                     <td class='category'><a href='../kontakty/'>Контакти</a></td>
  84.                     <td class='category'><a href='../tvorchist/'>Творчість</a></td>
  85.                     <td class='category'><a href='../opityvanya/'>Опитування</a></td>
  86.                     <td class='category'><a href='../konkyrcy/'>Конкурси</a></td>
  87.                 </tr>
  88.             </table>
  89.         </div>
  90.         <div class='content'>
  91. <?php
  92. // вся процедура работает на сессиях. Именно в ней хранятся данные пользователя, пока он находится на сайте. Очень важно запустить их в самом начале странички!!!
  93.  
  94.  
  95. include ("bd.php");// файл bd.php должен быть в той же папке, что и все остальные, если это не так, то просто измените путь
  96. if (isset($_GET['id'])) {$id =$_GET['id']; } //id "хозяина" странички
  97. else
  98. { exit("Вы зашил на страницу без параметра!");} //если не указали id, то выдаем ошибку
  99. if (!preg_match("|^[\d]+$|", $id)) {
  100. exit("<p>Неверный формат запроса! Проверьте URL</p>");//если id не число, то выдаем ошибку
  101. }
  102.  
  103. if (!empty($_SESSION['login']) and !empty($_SESSION['password']))
  104. {
  105. //если существует логин и пароль в сессиях, то проверяем, действительны ли они
  106. $login = $_SESSION['login'];
  107. $password = $_SESSION['password'];
  108. $result2 = mysql_query("SELECT id FROM users WHERE login='$login' AND password='$password' AND activation='1'",$db);
  109. $myrow2 = mysql_fetch_array($result2);
  110. if (empty($myrow2['id']))
  111.    {
  112.    //Если не действительны (может мы удалили этого пользователя из базы за плохое поведение)
  113.     exit("Вход на эту страницу разрешен только зарегистрированным пользователям!");
  114.    }
  115. }
  116. else {
  117. //Проверяем, зарегистрирован ли вошедший
  118. exit("Вход на эту страницу разрешен только зарегистрированным пользователям!"); }
  119. $result = mysql_query("SELECT * FROM users WHERE id='$id'",$db);
  120. $myrow = mysql_fetch_array($result);//Извлекаем все данные пользователя с данным id
  121.  
  122. if (empty($myrow['login'])) { exit("Пользователя не существует! Возможно он был удален.");} //если такого не существует
  123.  
  124. ?>
  125. <html>
  126. <head>
  127. <title><?php echo $myrow['login']; ?></title>
  128. </head>
  129. <body>
  130. <h2><?php echo $myrow['login']; ?></h2>
  131.  
  132.  
  133. <?php
  134. print <<<HERE
  135. |<a href='page.php?id=$myrow2[id]'>Моя страница</a>|<a href='index.php'>Главная страница</a>|<a href='all_users.php'>Список пользователей</a>|<a href='exit.php'>Выход</a><br><br>
  136. HERE;
  137. //выше вывели меню
  138.  
  139.  
  140.  
  141. if ($myrow['login'] == $login) {
  142. //Если страничка принадлежит вошедшему, то предлагаем изменить данные и выводим личные сообщения
  143.  
  144. print <<<HERE
  145.  
  146. <form action='update_user.php' method='post'>
  147. Ваш логин <strong>$myrow[login]</strong>. Изменить логин:<br>
  148. <input name='login' type='text'>
  149. <input type='submit' name='submit' value='изменить'>
  150. </form>
  151. <br>
  152.  
  153. <form action='update_user.php' method='post'>
  154. Изменить пароль:<br>
  155. <input name='password' type='password'>
  156. <input type='submit' name='submit' value='изменить'>
  157. </form>
  158. <br>
  159.  
  160. <form action='update_user.php' method='post' enctype='multipart/form-data'>
  161. Ваш аватар:<br>
  162. <img alt='аватар' src='$myrow[avatar]'><br>
  163. Изображение должно быть формата jpg, gif или png. Изменить аватар:<br>
  164. <input type="FILE" name="fupload">
  165. <input type='submit' name='submit' value='изменить'>
  166. </form>
  167. <br>
  168.  
  169. <h2>Личные сообщения:</h2>
  170.  
  171. HERE;
  172. //!!!!!!!!!ТУТ НАЧАЛО!!!!!!
  173. $tmp = mysql_query("SELECT * FROM messages WHERE poluchatel='$login' ORDER BY id DESC",$db);
  174. $messages = mysql_fetch_array($tmp);//извлекаем сообщения пользователя, сортируем по идентификатору в обратном порядке, т.е. самые новые сообщения будут вверху
  175.  
  176. if (!empty($messages['id'])) {
  177. do //выводим все сообщения в цикле
  178.   {
  179. $author = $messages['author'];
  180. $result4 = mysql_query("SELECT avatar,id FROM users WHERE login='$author'",$db); //извлекаем аватар автора
  181. $myrow4 = mysql_fetch_array($result4);
  182.  
  183. if (!empty($myrow4['avatar'])) {//если такового нет, то выводим стандартный(может этого пользователя уже давно удалили)
  184. $avatar = $myrow4['avatar'];
  185. }
  186. else {$avatar = "avatars/net-avatara.jpg";}
  187.  
  188.   printf("
  189.  <table>
  190.  <tr>
  191.  <td><a href='page.php?id=%s'><img alt='аватар' src='%s'></a></td>
  192.  
  193.  <td>Автор: <a href='page.php?id=%s'>%s</a><br>
  194.      Дата: %s<br>
  195.       Сообщение:<br>
  196.      %s<br>
  197.      <a href='drop_post.php?id=%s'>Удалить</a>
  198.  
  199.  </td>  
  200.  </tr>
  201.  </table><br>
  202.  ",$myrow4['id'],$avatar,$myrow4['id'],$author,$messages['date'],$messages['text'],$messages['id']);
  203.   //выводим само сообщение
  204.   }
  205.   while($messages = mysql_fetch_array($tmp));
  206.  
  207.                     }
  208.                     else {
  209.                     //если сообщений не найдено
  210.                     echo "Сообщений нет";
  211.                     }
  212. //!!!!!!!!!ТУТ КОНЕЦ!!!!!!
  213.     echo
  214.         "  
  215.             <div class='admin_panel'>
  216.                 <nav>
  217.                 <ul id='menu'>
  218.                         <li>
  219.                                 <a href='#'>$login</a>
  220.                                 <ul>
  221.                                         <li><a href='page.php?id=$id'>Ваш профіль</a></li>
  222.                                         <li><a href='settings.php'>Налаштування</a></li>
  223.                                         <li><a href='messages.php'>Повідомлення</a></li>
  224.                                         <li><a href='exit.php'>Вийти</a></li>
  225.                                 </ul>
  226.                         </li>
  227.                 </ul>
  228.             </div>
  229.         ";             
  230. }
  231.  
  232. else
  233. {
  234. //если страничка чужая, то выводим только некторые данные и форму для отправки личных сообщений
  235.  
  236. print <<<HERE
  237. <img alt='аватар' src='$myrow[avatar]'><br>
  238. <form action='post.php' method='post'>
  239. <br>
  240. <h2>Отправить Ваше сообщение:</h2>
  241. <textarea cols='43' rows='4' name='text'></textarea><br>
  242. <input type='hidden' name='poluchatel' value='$myrow[login]'>
  243. <input type='hidden' name='id' value='$myrow[id]'>
  244. <input type='submit' name='submit' value='Отправить'>
  245. </form>
  246. HERE;
  247. }
  248.  
  249. ?>
  250.         </div>
  251.  
  252.     </div>
  253.    
  254. </body>
  255. </html>
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement