prepare('SELECT username FROM users WHERE userID = :uid'); $stmt->execute([':uid' => $rec['userID']]); $row = $stmt->fetchColumn(); $username = $row !== false ? (string)$row : ''; qdb_discard($tmpDb, $lockFp); } catch (Throwable $e) { if (isset($tmpDb, $lockFp)) { qdb_discard($tmpDb, $lockFp); } if (function_exists('qdb_api_log_note_exception')) { qdb_api_log_note_exception($e); } require_once __DIR__ . '/../lib/errors.php'; error_log('session username lookup: ' . $e->getMessage()); json_error('SERVER_ERROR', qdb_public_error_message($e, 'Session check'), 500); } } json_success([ 'valid' => true, 'user' => $username, 'role' => $role, 'userID' => $rec['userID'] ?? '', 'mustChangePassword' => !empty($rec['temp']), ]);