Guest User

gr

a guest
Jul 19th, 2016
24
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
text 1.83 KB | None | 0 0
  1. <?php
  2.  
  3. namespace Kernel\Auth;
  4.  
  5.  
  6. use Kernel\Manager\DB;
  7.  
  8. class DBAuth
  9. {
  10. private $db;
  11. private $session;
  12.  
  13.  
  14. public function __construct(DB $db)
  15. {
  16. $this->db = $db;
  17. $session = session_start();
  18. $this->session = $session;
  19. }
  20.  
  21. public function login($username, $password)
  22. {
  23. $sql = "SELECT * FROM user WHERE username = :username";
  24. $this->db->query($sql);
  25. $this->db->bind(':username', $username);
  26. $user = $this->db->resultSingle();
  27. if ($user) {
  28. if ($user->password == sha1($password)) {
  29. $_SESSION['is_logged'] = true;
  30. $_SESSION['user_id'] = $user->id;
  31. return true;
  32. }
  33. } else {
  34. return false;
  35. }
  36. }
  37.  
  38. public function setFlash($message,$type= "danger")
  39. {
  40. // si session non définie
  41. if(!isset($_SESSION)) {
  42. session_start();
  43. }
  44. $_SESSION['flash'] = [
  45. 'message' => $message,
  46. 'type' => $type
  47. ];
  48. }
  49.  
  50. public function getFlash()
  51. {
  52. if(!isset($_SESSION)) {
  53. session_start();
  54. }
  55. $html = null;
  56. if(isset($_SESSION['flash'])) {
  57. $html = '<div class="alert alert-'.$_SESSION['flash']['type'].'" >';
  58. if(is_array($_SESSION['flash']['message'])) {
  59. foreach($_SESSION['flash']['message'] as $message) {
  60. $html .= $message.'<br/>';
  61. }
  62. } else {
  63. $html .= $_SESSION['flash']['message'];
  64. }
  65. $html .='</div>';
  66. }
  67. // Affichage du/des message(s) flash
  68. echo $html;
  69. // Puis destruction du/des message(s) dans la session du user
  70. unset($_SESSION['flash']);
  71. }
  72.  
  73. }
Add Comment
Please, Sign In to add comment