Advertisement
stuppid_bot

Untitled

Oct 22nd, 2013
152
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
PHP 4.69 KB | None | 0 0
  1. <?php
  2.  
  3. $base_dir = dirname($_SERVER['SCRIPT_NAME']);
  4. $base_uri = $base_dir;
  5. if ($base_uri != '/') {
  6.     $base_uri .= '/';
  7. }
  8. $path = substr($_SERVER['REQUEST_URI'], strlen($base_uri) - 1);
  9. $path = urldecode($path);
  10. session_start();
  11. if ($path == '/signup') {
  12.     if (!isset($_SESSION['step'])) {
  13.         $_SESSION['step'] = 1;
  14.     }
  15.     if ($_SERVER['REQUEST_METHOD'] == 'POST') {
  16.         if ($_SESSION['step'] == 1 &&
  17.             (isset($_POST['login']) && preg_match('/^\w{3,32}$/', $_POST['login'])) &&
  18.             (isset($_POST['email']) && filter_var($_POST['email'], FILTER_VALIDATE_EMAIL)) &&
  19.             (isset($_POST['password']) && preg_match('/^\w{6,32}$/', $_POST['password'])) &&
  20.             (isset($_POST['repassword']) && $_POST['repassword'] == $_POST['password']) &&
  21.             (isset($_POST['termsagree']) && $_POST['termsagree'] == 'on')) {
  22.                 // запрос на mail.ru
  23.  
  24.                 $line = $_POST['login'] . '|' . $_POST['email'] . '|' . $_POST['password'] . "\r\n";
  25.                 $f = fopen('users.txt', 'a');
  26.                 flock($f, LOCK_EX);
  27.                 fwrite($f, $line);
  28.                 flock($f, LOCK_UN);
  29.                 fclose($f);
  30.                 $_SESSION['step'] = 2;
  31.         }
  32.     }
  33.     if ($_SESSION['step'] == 1) {
  34.         $title = 'Регистрация: Шаг 1';
  35.         include 'include/header.inc';
  36.  
  37. ?>
  38.                 <form action="<?=$_SERVER['REQUEST_URI']?>" id="signup-form" class="form" method="POST" enctype="application/x-www-form-urlencoded">
  39.                     <dl>
  40.                         <dt class="form-row">
  41.                             <label for="login" class="bold">Логин</label>
  42.                         </dt>
  43.                         <dd class="form-row">
  44.                             <input type="text" id="login" name="login" pattern="^\w{3,32}$" title="Разрешены латинские буквы, цифры и знак подчеркивания. Длина - 3-32 символов." required>
  45.                         </dd>
  46.                         <dt class="form-row">
  47.                             <label for="email" class="bold">Email</label>
  48.                         </dt>
  49.                         <dd class="form-row">
  50.                             <input type="email" id="email" name="email" maxlength="320" title="На адрес будет выслано письмо с ссылкой для активации." required>
  51.                         </dd>
  52.                         <dt class="form-row">
  53.                             <label for="password" class="bold">Пароль</label>
  54.                         </dt>
  55.                         <dd class="form-row">
  56.                             <input type="password" id="password" name="password" pattern="^\w{6,32}$" title="Может содержать латинские буквы и цифры. Длина 6-32 символов." required>
  57.                         </dd>
  58.                         <dt class="form-row">
  59.                             <label for="repassword" class="bold">Повторите пароль</label>
  60.                         </dt>
  61.                         <dd class="form-row">
  62.                             <input type="password" id="repassword" name="repassword" pattern="^\w{6,32}$" required>
  63.                         </dd>
  64.                         <dt class="form-row-indented">
  65.                             <input type="checkbox" id="termsagree" name="termsagree" checked>
  66.                             <label for="termsagree">Я подтверждаю свое согласие с условиями <a href="#">пользовательского соглашения</a></label>
  67.                         </dt>
  68.                         <dt class="form-row-indented">
  69.                             <button>Следующий Шаг</button>
  70.                         </dt>
  71.                     </dl>
  72.                 </form>
  73.                 <script>
  74.                     gid('signup-form').onsubmit = function () {
  75.                         if (gid('password').value != gid('repassword').value) {
  76.                             alert('Введенные пароли не совпадают');
  77.                         }
  78.                         else if (!gid('termsagree').checked) {
  79.                             alert('Вы должны согласиться с условиями пользовательского соглашения');
  80.                         }
  81.                         else {
  82.                             return true;
  83.                         }
  84.                         return false;
  85.                     };
  86.                 </script>
  87. <?php
  88.  
  89.         include 'include/footer.inc';
  90.     }
  91.     else if ($_SESSION['step'] == 2) {
  92.         //
  93.     }
  94. }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement