Advertisement
Guest User

Untitled

a guest
Mar 13th, 2017
83
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
text 1.39 KB | None | 0 0
  1. [
  2. { "firstName": "John", "lastName": "Smith", "login": "john", "password": "qwerty" },
  3. { "firstName": "Stella", "lastName": "Hoe", "login": "stella", "password": "asd123 "}
  4. ]
  5.  
  6. session_start(); [1/7]
  7.  
  8. $users = json_decode(file_get_contents(__DIR__ . '/users.json'), true);
  9.  
  10. $method = $_SERVER['REQUEST_METHOD'];
  11. if ($method === 'POST' && @$_POST['action'] === 'login') {
  12. $login = $_POST['login'];
  13. $password = $_POST['password'];
  14.  
  15. $user = findUser($login, $password, $users);
  16.  
  17. if ($user) {
  18. $_SESSION['logged_user'] = $user;
  19. die(json_encode($user));
  20. } else {
  21. $_SESSION['logged_user'] = null;
  22. die('{"error": "Incorrect login or password"}');
  23. }
  24. } elseif ($method === 'POST' && @$_POST['action'] === 'logout') {
  25. $_SESSION['logged_user'] = null;
  26. die('{}');
  27. } elseif ($method === 'GET') {
  28. $user = @$_SESSION['logged_user'];
  29. if ($user) {
  30. die(json_encode($user));
  31. } else {
  32. die('{}');
  33. }
  34. }
  35.  
  36. function findUser($login, $password, $users) {
  37. $filtered = array_filter($users, function($user) use ($login, $password) {
  38. return $user['login'] === $login && $user['password'] === $password;
  39. });
  40.  
  41. return @$filtered[0];
  42. }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement