false, 'error' => 'Email and password are required.']); exit; } try { $stmt = db()->prepare("SELECT id, email, password FROM users WHERE email = ?"); $stmt->execute([$email]); $user = $stmt->fetch(PDO::FETCH_ASSOC); if ($user && password_verify($password, $user['password'])) { $_SESSION['user_id'] = $user['id']; $_SESSION['email'] = $user['email']; echo json_encode(['success' => true]); } else { echo json_encode(['success' => false, 'error' => 'Invalid email or password.']); } } catch (PDOException $e) { echo json_encode(['success' => false, 'error' => 'Database error: ' . $e->getMessage()]); }