Advertisement
Guest User

Untitled

a guest
Nov 22nd, 2015
69
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
PHP 13.79 KB | None | 0 0
  1. <?
  2.     // База данных
  3.     include './system/db.php';
  4.    
  5.     // Функции
  6.     include './system/functions.php';
  7.        
  8.     // Проверка аутентификации
  9.     include './system/user.php';
  10.        
  11.     $title = 'Регистрация нового аккаунта';
  12.  
  13.     // Активная ссылка в навигации
  14.     $active_index = "";
  15.     $active_about = "";
  16.     $active_rules = "";
  17.  
  18.     // "Header" сайта
  19.     include './system/head.php';
  20. if($user) {
  21.    
  22.     ?>
  23.    
  24.     HTML
  25.      
  26. <?
  27. }
  28. else
  29. {
  30.     if(isset($_POST['student']))
  31.     {        
  32.     $reg_step = 1;      
  33.     }
  34.        
  35.     if(isset($_POST['lecturer']))
  36.     {    
  37.     $reg_step = 2;      
  38.     }
  39.     if(isset($_POST['signup_1']))
  40.     {
  41.     $reg_step = 1;
  42.     $email = _string($_POST['email']);
  43.     $password = _string($_POST['password']);
  44.     $lastname = _string($_POST['lastname']);
  45.     $name = _string($_POST['name']);
  46.     $middlename = _string($_POST['middlename']);
  47.     $sex = _num($_POST['sex']);
  48.     $specialty = _num($_POST['specialty']);
  49.     $course = _num($_POST['course']);
  50.     $number_group = _num($_POST['number_group']);
  51.     }
  52.     if(isset($_POST['signup_2']))
  53.     {
  54.     $reg_step = 2;
  55.     $email = _string($_POST['email']);
  56.     $password = _string($_POST['password']);
  57.     $lastname = _string($_POST['lastname']);
  58.     $name = _string($_POST['name']);
  59.     $middlename = _string($_POST['middlename']);
  60.     $sex = _num($_POST['sex']);
  61.     $discipline = _num($_POST['discipline']);
  62.     }
  63.    
  64.    
  65.    
  66.     ?>
  67.  
  68.         <!--
  69.             ВЫБОР РОЛИ В УНИВЕРСИТЕТЕ
  70.                                     -->
  71.                                     <?
  72.    
  73.     if ($reg_step == 0)
  74.     {
  75.     ?>
  76. <div class="panel panel-primary">
  77.      
  78.       <div class="panel-heading">
  79.         <h3 class="panel-title">Регистрация на сайте - "Онлайн Система Тестирования"</h3>
  80.       </div>
  81.      
  82.       <div class="panel-body">
  83.       <div class="well well-sm">
  84.           <p class="text-center">Добро пожаловать в систему онлайн тестирования <strong>Факультета довузовской подготовки и СПО</strong>! Чтобы зарегистрироваться на сайте, выберите Ваш статус в университете.</p></div>
  85.  
  86.       <div class="row">
  87.      
  88.       <form action="/signup" method="post">
  89.      
  90.       <div class="col-xs-6"><input type="submit" name="student" class="btn btn-primary btn-block btn-lg" value="Студент"></div>
  91.            <div class="col-xs-6"><input type="submit" name="lecturer" class="btn btn-info btn-block btn-lg" value="Преподаватель"></div>
  92.            
  93.            </form>
  94.  
  95.     </div>
  96.    
  97.    
  98. </div>  
  99.    </div>
  100.    
  101.        <!--
  102.             РЕГИСТРАЦИЯ СТУДЕНТА
  103.                                  -->
  104.  
  105.  
  106.  
  107. <?
  108. }
  109. else
  110.     if($reg_step == 1)
  111.     {        
  112.    
  113.     if($email && $password && $lastname && $name && $middlename && $number_group) {
  114.        
  115.        
  116.         if(!preg_match('/^(?=.*\d)(?=.*[A-Za-z])[0-9A-Za-z!@#$%]{8,16}$/', $password))
  117.         {
  118.             $errors[]='Пароль не соответствует формату. Пожалуйста, введите корректный пароль.';
  119.         }
  120.        
  121.         $q = mysql_query('SELECT * FROM `users` WHERE `email` = "'.$email.'" LIMIT 1');
  122.             $row = mysql_fetch_array($q);
  123.         if($row != 0)
  124.         {
  125.             $errors[]='Данный e-mail уже используется.';
  126.         }
  127.        
  128.         if($errors) {
  129.             foreach($errors as $error) {  
  130.  
  131.           ?>
  132.          
  133.           <div class="alert alert-danger text-center"><strong>Ошибка! </strong><?=$error?></div>
  134.          
  135.           <?
  136.          
  137.         }
  138.             }
  139.         else
  140.         {
  141.    
  142. if(mysql_query('INSERT INTO `users` (`email`, `password`, `lastname`, `name`, `middlename`, `sex`, `specialty`, `course`, `number_group`, `access`) VALUES ("'.$email.'", "'.$password.'", "'.$lastname.'", "'.$name.'", "'.$middlename.'", "'.$sex.'", "'.$specialty.'", "'.$course.'", "'.$number_group.'", "3")'))
  143. {
  144.    
  145.    
  146.     $id = mysql_insert_id();
  147.    
  148.     setCookie('id', $id, time() + 86400, '/');
  149.     setCookie('email', $email, time() + 86400, '/');
  150.     setCookie('password', $password, time() + 86400, '/');
  151.    
  152.     header('location: /');
  153.    
  154. }}}
  155.         ?>
  156.        
  157.         <div class="panel panel-primary">
  158.      
  159.       <div class="panel-heading">
  160.         <h3 class="panel-title">Регистрация на сайте - "Онлайн Система Тестирования" в качестве студента</h3>
  161.       </div>
  162.      
  163.       <div class="panel-body">
  164.      
  165.       <form action="/signup" method="post">
  166.  
  167.       <div class="row">
  168.      
  169.       <div class="form-group col-sm-6">
  170.             <label for="email">E-mail <span class="text-muted">(для входа на сайт)</span></label>
  171.             <div class="input-group"><span class="input-group-addon"><span class="glyphicon glyphicon-envelope"></span></span>
  172.             <input type="email" name="email" value="" class="form-control" placeholder="example@mail.ru" required="required" data-toggle="tooltip" data-placement="bottom" title="Пожалуйста, укажите действующий адрес электронной почты. "/>    
  173.           </div></div>
  174.  
  175.         <div class="form-group col-sm-6">
  176.        
  177.             <label for="password">Пароль</label>
  178.             <div class="input-group"><span class="input-group-addon"><span class="glyphicon glyphicon-lock"></span></span>
  179.             <input type="password" name="password" class="form-control" required="required" placeholder="Введите новый пароль" data-toggle="tooltip" data-placement="bottom" title="Пароль должен состоять, как минимум, из 8 символов, включая, 1 цифру и 1 букву латинского алфавита"/>
  180.             </div></div>
  181.  
  182.     </div>
  183.    
  184.     <div class="row" data-toggle="tooltip" data-placement="left" title="Пожалуйста, указывайте ваши настоящие данные" >
  185.         <div class="form-group col-sm-4" >
  186.             <label for="lastname">Фамилия</label>
  187.             <input type="text" id="lastname" name="lastname" value="" class="form-control" required="required" />      
  188.             </div>
  189.         <div class="form-group col-sm-4">
  190.             <label for="name">Имя</label>
  191.             <input type="text" id="name" name="name" value="" class="form-control" required="required" />      
  192.             </div>
  193.         <div class="form-group col-sm-4">
  194.             <label for="middlename">Отчество</label>
  195.             <input type="text" id="middlename" name="middlename" value="" class="form-control" required="required" />                       </div>
  196.     </div>
  197.    
  198.     <div id="sex" class="form-group">
  199.         <label for="sex">Пол</label>
  200.         <div>
  201.             <label class="radio-inline">
  202.             <input type="radio" name="sex" value="0" checked="checked"/> Мужской</label>
  203.             <label class="radio-inline">
  204.             <input type="radio" name="sex" value="1" /> Женский</label>
  205.         </div>
  206.     </div>
  207.    
  208.    <div class="row">
  209.    
  210.     <div id="specialty" class="form-group col-sm-6">
  211.             <label for="specialty">Специальность</label>
  212.             <select id="select_specialty" name="specialty" class="form-control" required="required">
  213. <option selected disabled>Выберите специальность</option>
  214. <option value="1">Программирование в компьютерных системах</option>
  215. <option value="2">Экономика и бухгалтерский учет (по отраслям)</option>
  216. <option value="3">Право и организация социального обеспечения</option>
  217. <option value="4">Туризм</option>
  218. </select>      
  219.      </div>
  220.      
  221.            <div id="course" class="form-group col-sm-6">
  222.             <label for="course">Курс</label>
  223.             <select id="select_course" name="course" class="form-control" required="required">
  224. <option selected disabled>Выберите курс</option>
  225. <option value="1">Первый</option>
  226. <option value="2">Второй</option>
  227. <option value="3">Третий</option>
  228. <option value="4">Четвертый</option>
  229. </select>      
  230.         </div>
  231.        
  232.         <div id="number_group" class="form-group col-sm-6 ">
  233.             <label for="number_group">Номер группы</label>
  234.             <input type="number" name="number_group" value="" class="form-control" required="required" />      
  235.         </div>
  236.          
  237.           </div>
  238.      
  239.       <div class="form-group text-center">
  240.         <input type="submit" class="btn btn-success btn-lg" name="signup_1" value="Зарегистрироваться">
  241.      </div>
  242.       </form>
  243. </div>  
  244.    </div>
  245.    <?
  246. }
  247.  
  248. if($reg_step == 2)
  249.     {  
  250.    
  251.     if($email && $password && $lastname && $name && $middlename) {
  252.        
  253.        
  254.         if(!preg_match('/^(?=.*\d)(?=.*[A-Za-z])[0-9A-Za-z!@#$%]{8,16}$/', $password))
  255.         {
  256.             $errors[]='Пароль не соответствует формату. Пожалуйста, введите корректный пароль.';
  257.         }
  258.        
  259.         $q = mysql_query('SELECT * FROM `users` WHERE `email` = "'.$email.'" LIMIT 1');
  260.             $row = mysql_fetch_array($q);
  261.         if($row != 0)
  262.         {
  263.             $errors[]='Данный e-mail уже используется.';
  264.         }
  265.        
  266.         if($errors) {
  267.             foreach($errors as $error) {  
  268.  
  269.           ?>
  270.          
  271.           <div class="alert alert-danger text-center"><strong>Ошибка! </strong><?=$error?></div>
  272.          
  273.           <?
  274.          
  275.         }
  276.             }
  277.         else
  278.         {
  279.    
  280. if(mysql_query('INSERT INTO `users` (`email`,`password`, `lastname`, `name`, `middlename`, `sex`, `discipline`, `access`) VALUES ("'.$email.'", "'.$password.'", "'.$lastname.'", "'.$name.'", "'.$middlename.'", "'.$sex.'", "'.$discipline.'", "2")'))
  281. {
  282.    
  283.    
  284.     $id = mysql_insert_id();
  285.    
  286.     setCookie('id', $id, time() + 86400, '/');
  287.     setCookie('email', $email, time() + 86400, '/');
  288.     setCookie('password', $password, time() + 86400, '/');
  289.    
  290.     header('location: /');
  291.    
  292. }}}
  293.         ?>
  294.        
  295.         <div class="panel panel-primary">
  296.      
  297.       <div class="panel-heading">
  298.         <h3 class="panel-title">Регистрация на сайте - "Онлайн Система Тестирования" в качестве преподавателя</h3>
  299.       </div>
  300.      
  301.       <div class="panel-body">
  302.      
  303.       <form action="/signup" method="post">
  304.  
  305.       <div class="row">
  306.      
  307.       <div class="form-group col-sm-6">
  308.             <label for="email">E-mail <span class="text-muted">(для входа на сайт)</span></label>
  309.             <div class="input-group"><span class="input-group-addon"><span class="glyphicon glyphicon-envelope"></span></span>
  310.             <input type="email" name="email" value="" class="form-control" placeholder="example@mail.ru" required="required" data-toggle="tooltip" data-placement="bottom" title="Пожалуйста, укажите действующий адрес электронной почты. "/>    
  311.           </div></div>
  312.  
  313.         <div class="form-group col-sm-6">
  314.        
  315.             <label for="password">Пароль</label>
  316.             <div class="input-group"><span class="input-group-addon"><span class="glyphicon glyphicon-lock"></span></span>
  317.             <input type="password" name="password" class="form-control" required="required" placeholder="Введите новый пароль" data-toggle="tooltip" data-placement="bottom" title="Пароль должен состоять, как минимум, из 8 символов, включая, 1 цифру и 1 букву латинского алфавита"/>
  318.             </div></div>
  319.  
  320.     </div>
  321.    
  322.     <div class="row" data-toggle="tooltip" data-placement="left" title="Пожалуйста, указывайте ваши настоящие данные" >
  323.         <div class="form-group col-sm-4" >
  324.             <label for="lastname">Фамилия</label>
  325.             <input type="text" id="lastname" name="lastname" value="" class="form-control" required="required" />      
  326.             </div>
  327.         <div class="form-group col-sm-4">
  328.             <label for="name">Имя</label>
  329.             <input type="text" id="name" name="name" value="" class="form-control" required="required" />      
  330.             </div>
  331.         <div class="form-group col-sm-4">
  332.             <label for="middlename">Отчество</label>
  333.             <input type="text" id="middlename" name="middlename" value="" class="form-control" required="required" />                       </div>
  334.     </div>
  335.    
  336.     <div id="sex" class="form-group">
  337.         <label for="sex">Пол</label>
  338.         <div>
  339.             <label class="radio-inline">
  340.             <input type="radio" name="sex" value="0" checked="checked"/> Мужской</label>
  341.             <label class="radio-inline">
  342.             <input type="radio" name="sex" value="1" /> Женский</label>
  343.         </div>
  344.     </div>
  345.    
  346.    <div class="row">
  347.    
  348.     <div id="discipline" class="form-group col-sm-6">
  349.             <label for="discipline">Преподаваемая дисциплина</label>
  350.             <select id="select_discipline" name="discipline" class="form-control" required="required">
  351. <option value ="0" selected disabled>Выберите дисциплину</option>
  352. <option value="1">Русский язык</option>
  353. <option value="2">Математика</option>
  354. <option value="3">Английский язык</option>
  355. <option value="4">Физическая культура</option>
  356. </select>      
  357.      </div>
  358.      
  359.          
  360.           </div>
  361.      
  362.       <div class="form-group text-center">
  363.         <input type="submit" class="btn btn-success btn-lg" name="signup_2" value="Зарегистрироваться">
  364.      </div>
  365.       </form>
  366. </div>  
  367.    </div>
  368.    <?
  369. }
  370.  
  371. }
  372.  
  373.     // "Footer" сайта
  374.     include './system/foot.php';
  375.  
  376. ?>
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement