prepare("SELECT * FROM users WHERE email = ? AND status = 'active'"); $stmt->execute([$email]); $user = $stmt->fetch(PDO::FETCH_ASSOC); if($user && password_verify($password, $user['password'])) { // Set session variables $_SESSION['user_id'] = $user['id']; $_SESSION['user_name'] = $user['name']; $_SESSION['user_email'] = $user['email']; $_SESSION['user_phone'] = $user['phone'] ?? ''; $_SESSION['last_activity'] = time(); $_SESSION['created'] = time(); // Set remember me cookie (30 days) if($remember) { $token = bin2hex(random_bytes(32)); $expiry = time() + (30 * 24 * 60 * 60); // Store token in database (if column exists) try { $stmt = $db->prepare("UPDATE users SET remember_token = ? WHERE id = ?"); $stmt->execute([$token, $user['id']]); } catch(Exception $e) { // Column might not exist - ignore } setcookie('remember_token', $token, $expiry, '/'); setcookie('user_email', $email, $expiry, '/'); } // Redirect to dashboard header('Location: dashboard.php'); exit(); } else { $error = "Invalid email or password"; } } catch(Exception $e) { error_log("Login error: " . $e->getMessage()); $error = "Login failed. Please try again."; } } } ?> Login - Zinky Electrician

Welcome Back!

Login to access your dashboard

Forgot Password?