Guest User

Untitled

a guest
Aug 14th, 2018
79
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
text 1.77 KB | None | 0 0
  1. <?php
  2. require 'resource/libs/db/db.php';
  3.  
  4. $data = $_POST;
  5. if(isset($data['do-signup']))
  6. {
  7. $errors = array();
  8. if(trim($data['login']) == '')
  9. {
  10. $errors[]='Введите логин';
  11. }
  12. if(trim($data['email']) == '')
  13. {
  14. $errors[]='Введите email';
  15. }
  16. if($data['password'] == '')
  17. {
  18. $errors[]='Введите pasw';
  19. }
  20. if(R::count('users',"login = ?", array($data['login'])) > 0 )
  21. {
  22. $errors[] = 'login уже есть';
  23. }
  24. if(R::count('users',"email = ?", array($data['email'])) > 0 )
  25. {
  26. $errors[] = 'email уже есть';
  27. }
  28.  
  29. if(empty($errors))
  30. {
  31. $user = R::dispense('users');
  32. $user->login = $data['login'];
  33. $user->email = $data['email'];
  34. $user->password = password_hash($data['password'],PASSWORD_DEFAULT);
  35. R::store($user);
  36. }else
  37. {
  38. echo '<div>'.array_shift($errors).'</div><hr>';
  39.  
  40. }
  41. }?>
  42.  
  43. <form action="signup.php" method="POST">
  44. <ul>
  45. <li><input type="text" name="login" placeholder="Логин"></li>
  46. <li><input type="email" name="email" placeholder="Email"></li>
  47. <li><input type="text" name="password" placeholder="Пароль"></li>
  48. <li><input type="submit" name="do-signup" value="Вход"></li>
  49. </ul>
  50. </form>
  51.  
  52. <input type="hidden" name="token" value="<?php echo(rand(1,999999));?>" />
  53.  
  54. session_start();
  55. if (isset($_POST['token'])) {
  56. if ($_POST['token'] == $_SESSION['formToken']) {
  57. // ошибка: повторная отправка формы
  58. } else {
  59. $_SESSION['formToken'] = $_POST['token'];
  60. // обрабатываем форму
  61. }
  62. }
  63.  
  64. header("Location:".$_SERVER['PHP_SELF']);
Add Comment
Please, Sign In to add comment