Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- <?php
- //Création d'une classe utilisatue(USER)
- class USER{
- private $db; // on déclare la variable db comme utilisable seuelment dans cette classe
- //cette fonction nous permet de lier la bdd a la variable db
- function __construct($DB_con)
- {
- $this->db = $DB_con;
- }
- // Cette fonction nous permet d'enregistrer un utilisateur dans la base de donnée
- public function register($fname, $lname, $uname, $upass)
- {
- try { //on tente de se connecter a la bdd pour y écrire
- $new_password = password_hash($upass, PASSWORD_DEFAULT);
- $stmt = $this->db->prepare("INSERT INTO comptes(USERNAME, PASSWORD) VALUES(:uname, :upass)");
- $stmt->bindparam(":uname", $uname);
- $stmt->bindparam(":upass", $upass);
- return $stmt;
- } catch (PDOException $e) {
- echo $e->getMessage(); // on écrit un message d'erreur a l'écran en cas d'erreur
- }
- }
- public function login($uname, $upass) //fonction pour se connecter
- {
- try { //on se connecte encore une fois a la bdd, mais on y lit cette fois ci
- $stmt = $this->db->prepare("SELECT * FROM comptes WHERE USERNAME = :uname LIMIT 1"); //on vérifie si le nom d'utilisateur est bien
- //dans la bdd
- $stmt->execute(array(':uname'=>$uname));
- if ($stmt->rowCount() > 0) //si c'est bon, on va chercher si le mdp est le bon
- {
- if (password_verify($upass, $userRow['PASSWORD']));//on check le mdp, si c'est bon, on arrive sur une autre page (Autre fonction)
- {
- $_SESSION['user_session'] = $userRow['id'];//on lie la session utilisateur a l'id dans la bdd de l'utilisateur
- return true;
- }
- }
- } catch (PDOException $e) {
- echo $e->getMessage(); //sinon on crache une erreur
- }
- }
- public function is_loggedin() // fonction envoyant un bool pour vérifier la présence
- {
- if(isset($_SESSION['user_session']));
- {
- return true;
- }
- }
- public function redirect($url)
- {
- header("Location : $url");
- }
- public function logout()
- {
- session_destroy();
- unset($_SESSION['user_session']);
- return true;
- }
- }
- ?>
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement