Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- <?php
- namespace Kernel\Auth;
- use Kernel\Manager\DB;
- class DBAuth
- {
- private $db;
- private $session;
- public function __construct(DB $db)
- {
- $this->db = $db;
- $session = session_start();
- $this->session = $session;
- }
- public function login($username, $password)
- {
- $sql = "SELECT * FROM user WHERE username = :username";
- $this->db->query($sql);
- $this->db->bind(':username', $username);
- $user = $this->db->resultSingle();
- if ($user) {
- if ($user->password == sha1($password)) {
- $_SESSION['is_logged'] = true;
- $_SESSION['user_id'] = $user->id;
- return true;
- }
- } else {
- return false;
- }
- }
- public function setFlash($message,$type= "danger")
- {
- // si session non définie
- if(!isset($_SESSION)) {
- session_start();
- }
- $_SESSION['flash'] = [
- 'message' => $message,
- 'type' => $type
- ];
- }
- public function getFlash()
- {
- if(!isset($_SESSION)) {
- session_start();
- }
- $html = null;
- if(isset($_SESSION['flash'])) {
- $html = '<div class="alert alert-'.$_SESSION['flash']['type'].'" >';
- if(is_array($_SESSION['flash']['message'])) {
- foreach($_SESSION['flash']['message'] as $message) {
- $html .= $message.'<br/>';
- }
- } else {
- $html .= $_SESSION['flash']['message'];
- }
- $html .='</div>';
- }
- // Affichage du/des message(s) flash
- echo $html;
- // Puis destruction du/des message(s) dans la session du user
- unset($_SESSION['flash']);
- }
- }
Add Comment
Please, Sign In to add comment