Advertisement
Guest User

Untitled

a guest
Jan 13th, 2016
115
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
text 3.32 KB | None | 0 0
  1. <?php
  2. class auth{
  3. //Авторизация пользователя
  4. public static function login ($login, $password){
  5. $login = mysqli_real_escape_string (dbConnection::get_link (), $login);
  6. $password = mysqli_real_escape_string (dbConnection::get_link (), $password);
  7. if ($user = user::model ()->find (array ('username' => $login, 'password' => md5 ($password)))){
  8. $_SESSION['user_id'] = $user->id;
  9. $_SESSION['admin'] = $user->role;
  10. $_SESSION['username'] = $user->username;
  11. return true;
  12. }
  13. else
  14. return false;
  15. }
  16.  
  17. //Проверка на то, что пользователь прошел авторизацию
  18. public static function is_logged (){
  19. if (isset ($_SESSION ['user_id']))
  20. return true;
  21. else
  22. return false;
  23. }
  24.  
  25. //Проверка роли авторизованного пользователя
  26. public static function is_admin (){
  27. if (isset ($_SESSION ['admin']) && $_SESSION ['admin'] == '1')
  28. return true;
  29. else
  30. return false;
  31. }
  32.  
  33. //Возвращает ID пользователя
  34. public static function user_id (){
  35. if (isset ($_SESSION ['user_id']))
  36. return $_SESSION ['user_id'];
  37. else
  38. return null;
  39. }
  40.  
  41. public static function logout (){
  42. unset ($_SESSION ['user_id']);
  43. unset ($_SESSION ['admin']);
  44. }
  45.  
  46. //Имя пользователя
  47. public static function user_name (){
  48. if (isset ($_SESSION ['username']))
  49. return $_SESSION ['username'];
  50. else
  51. return null;
  52. }
  53. }
  54. ?>
  55.  
  56.  
  57.  
  58.  
  59. *****************************************************************************
  60.  
  61.  
  62. <?php
  63. class login{
  64. //Авторизация пользователя
  65. public function index (){
  66. if (!auth::is_logged ()){
  67. if (isset ($_POST['submit']) && isset ($_POST['user']['username']) && isset ($_POST['user']['password'])){
  68. if (auth::login ($_POST['user']['username'], $_POST['user']['password']))
  69. header ('Location: '.BASE_URL);
  70. else
  71. view::render ('./views/login/index.php', array ('error'=>'Неверное имя пользователя или пароль.'));
  72. }
  73. else
  74. view::render ('./views/login/index.php');
  75. }
  76. else
  77. header ('Location: '.BASE_URL);
  78. }
  79.  
  80. //Регистрация пользователя
  81. public function registration (){
  82. if (!auth::is_logged ()){
  83. if (isset ($_POST['submit']) && isset ($_POST['user'])){
  84. $model = new user();
  85. $model->set_attributes ($_POST['user']);
  86. $model->role = "0";
  87. if ($_POST['double_password'] == $model->password){
  88. if ($model->validate ()){
  89. if (!user::model ()->find (array ('username' => $model->username)))
  90. {
  91. $model->password = md5($model->password);
  92. $model->save ();
  93. header ('Location: '.BASE_URL);
  94. }
  95. else
  96. $model->add_validation_error ('Пользователь с таким логином уже существует.');
  97. }
  98. }
  99. else
  100. $model->add_validation_error ('Ошибка подтверждения пароля.');
  101.  
  102. view::render ('./views/login/registration.php', array ('model' => $model));
  103. }
  104.  
  105. view::render ('./views/login/registration.php');
  106. }
  107. else
  108. header ('Location: '.BASE_URL);
  109. }
  110.  
  111. //Выход из системы
  112. public function logout (){
  113. auth::logout ();
  114. header ('Location: '.BASE_URL);
  115. }
  116. }
  117. ?>
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement