$database, "Uid" => $username, "PWD" => $password, "CharacterSet" => "UTF-8" ]; $conn = sqlsrv_connect($serverName, $connectionOptions); if (!$conn) { die("Database connection failed: " . print_r(sqlsrv_errors(), true)); } $errorMessage = ""; if ($_SERVER["REQUEST_METHOD"] === "POST") { $email = trim($_POST["Email"] ?? ""); $plainPassword = $_POST["Password"] ?? ""; if ($email === "" || $plainPassword === "") { $errorMessage = "Please enter your email and password."; } else { $sql = " SELECT u.UserID, u.FirstName, u.LastName, u.Email, u.PasswordHash, u.IsActive, r.RoleName FROM Users u INNER JOIN Roles r ON u.RoleID = r.RoleID WHERE u.Email = ?; "; $stmt = sqlsrv_query($conn, $sql, [$email]); if (!$stmt) { $errorMessage = "Login failed. Please try again."; } else { $user = sqlsrv_fetch_array($stmt, SQLSRV_FETCH_ASSOC); if (!$user || !password_verify($plainPassword, $user["PasswordHash"])) { $errorMessage = "Invalid email or password."; } elseif (!$user["IsActive"]) { $errorMessage = "This account is inactive. Please contact an administrator."; } elseif (!in_array($user["RoleName"], ["Admin", "GM"])) { $errorMessage = "You do not have access to this website."; } else { session_regenerate_id(true); $_SESSION["UserID"] = $user["UserID"]; $_SESSION["FirstName"] = $user["FirstName"]; $_SESSION["LastName"] = $user["LastName"]; $_SESSION["Email"] = $user["Email"]; $_SESSION["RoleName"] = $user["RoleName"]; $_SESSION["LoggedIn"] = true; if ($user["RoleName"] === "Admin") { header("Location: admin-management.php"); exit; } if ($user["RoleName"] === "GM") { header("Location: create-offer.php"); exit; } } } } } ?> OfferHub Login
OfferHub
Monthly dealership offer management for General Managers, Admins, and marketing teams.
Create monthly store offers
Generate disclaimers automatically
Control store access by user
Review approved offers for marketing