fix: resolve 3 billing admin errors and normalize remote_servers query
- admin_config.php: guard session_start() — was firing Notice because admin_auth.php → session_bridge.php already started the session - includes/menu.php: check mysqli_thread_id() before reusing $db so a closed handle does not cause 'mysqli object is already closed' fatal - admin_invoices.php / admin_payments.php: set $db = null after mysqli_close() so menu.php's reuse-check correctly falls through to opening a fresh connection - adminserverlist.php: use col_exists() to detect missing 'enabled' column in gsp_remote_servers; fall back to constant 1 and display a schema-notice banner; guard UPDATE accordingly; also add missing price_daily / price_year columns to the services SELECT; remove duplicate 'Update Enabled Servers' button - add_remote_server_enabled_column.sql: idempotent migration to add the 'enabled' INT column to gsp_remote_servers on older installs Agent-Logs-Url: https://github.com/GameServerPanel/GSP/sessions/988997ed-7568-48bf-96ef-889fb5d91fec Co-authored-by: iaretechnician <2749183+iaretechnician@users.noreply.github.com>
This commit is contained in:
parent
59a7eef4bd
commit
bb77620796
6 changed files with 59 additions and 8 deletions
|
|
@ -55,7 +55,9 @@ if ($is_logged_in) {
|
|||
// Prefer reusing an existing $db if present, otherwise open a local connection
|
||||
$menu_db = null;
|
||||
$menu_db_opened = false;
|
||||
if (isset($db) && $db instanceof mysqli) {
|
||||
// Only reuse $db if it is still an open (non-closed) connection.
|
||||
// mysqli_thread_id() returns 0 on a closed handle, so guard against that.
|
||||
if (isset($db) && $db instanceof mysqli && @mysqli_thread_id($db)) {
|
||||
$menu_db = $db;
|
||||
} else {
|
||||
$menu_db_port = isset($db_port) ? (int)$db_port : null;
|
||||
|
|
|
|||
Loading…
Add table
Add a link
Reference in a new issue