Untitled
unknown
plain_text
10 months ago
1.8 kB
4
Indexable
<?php
require_once "Database.php";
class UserModel {
private $conn;
public function __construct() {
$database = new Database();
$this->conn = $database->getConnection();
}
public function getAllUsers() {
$query = "SELECT * FROM users";
$stmt = $this->conn->prepare($query);
$stmt->execute();
return $stmt->fetchAll(PDO::FETCH_ASSOC);
}
public function getUserById($id) {
$query = "SELECT * FROM users WHERE id = :id";
$stmt = $this->conn->prepare($query);
$stmt->bindParam(':id', $id);
$stmt->execute();
return $stmt->fetch(PDO::FETCH_ASSOC);
}
public function register($username, $email, $password) {
$hashedPassword = password_hash($password, PASSWORD_BCRYPT);
$query = "INSERT INTO users (username, email, password) VALUES (:username, :email, :password)";
$stmt = $this->conn->prepare($query);
$stmt->bindParam(':username', $username);
$stmt->bindParam(':email', $email);
$stmt->bindParam(':password', $hashedPassword);
return $stmt->execute();
}
public function login($email, $password) {
$query = "SELECT * FROM users WHERE email = :email";
$stmt = $this->conn->prepare($query);
$stmt->bindParam(':email', $email);
$stmt->execute();
$user = $stmt->fetch(PDO::FETCH_ASSOC);
if ($user && password_verify($password, $user['password'])) {
return $user;
} else {
return false;
}
}
public function deleteUser($id) {
$query = "DELETE FROM users WHERE id = :id";
$stmt = $this->conn->prepare($query);
$stmt->bindParam(':id', $id);
return $stmt->execute();
}
}
?>Editor is loading...
Leave a Comment