From f4dcd561a019c3a9cef99816f64b17a22ace82a4 Mon Sep 17 00:00:00 2001 From: Philip Mo Date: Wed, 27 Dec 2017 22:42:10 +0100 Subject: [PATCH] #1057 fixed imploding externalMasterIDArray in the add-process of gameserver and voiceserver --- stuff/api/api_gserver.php | 2 +- stuff/api/api_voice.php | 2 +- 2 files changed, 2 insertions(+), 2 deletions(-) diff --git a/stuff/api/api_gserver.php b/stuff/api/api_gserver.php index b3a1e895..956a853b 100644 --- a/stuff/api/api_gserver.php +++ b/stuff/api/api_gserver.php @@ -218,7 +218,7 @@ if (!isset($success['false']) and array_value_exists('action', 'add', $data) and } else if (isset($externalMasterIDsArray) and count($externalMasterIDsArray) > 0) { - $inSQLArray = 'r.`externalID` IN (' . implode(',', "'" . $externalMasterIDsArray . "'") . ') AND'; + $inSQLArray = 'r.`externalID` IN (\'' . implode('\', \'', $externalMasterIDsArray ) . '\') AND'; } $query = $sql->prepare("SELECT r.`id`,r.`quota_active`,r.`install_paths`,r.`hyperthreading`,r.`cores`,r.`externalID`,r.`connect_ip_only`,r.`ip`,r.`altips`,r.`maxslots`,r.`maxserver`,r.`active` AS `hostactive`,r.`resellerid` AS `resellerid`,(r.`maxserver`-(SELECT COUNT(`id`) FROM `gsswitch` AS g WHERE g.`rootID`=r.`id` )) AS `freeserver`,(r.`maxslots`-(SELECT SUM(g.`slots`) FROM `gsswitch` AS g WHERE g.`rootID`=r.`id`)) AS `leftslots`,(r.`ram`-(SELECT SUM(g.`maxram`) FROM `gsswitch` AS g WHERE g.`rootID`=r.`id`)) AS `free_ram`,(SELECT COUNT(m.`id`) FROM `rservermasterg` AS m WHERE m.`serverid`=r.`id` AND $implodedQuery) `mastercount` FROM `rserverdata` AS r GROUP BY r.`id` HAVING ($inSQLArray `hostactive`='Y' AND r.`resellerid`=? AND (`freeserver`>0 OR `freeserver` IS NULL) AND (`leftslots`>? OR `leftslots` IS NULL) AND (`free_ram`>? OR `free_ram` IS NULL) AND `mastercount`=?) ORDER BY `freeserver` DESC LIMIT 1"); diff --git a/stuff/api/api_voice.php b/stuff/api/api_voice.php index dc05e92f..159e1da1 100644 --- a/stuff/api/api_voice.php +++ b/stuff/api/api_voice.php @@ -143,7 +143,7 @@ if (!isset($success['false']) and array_value_exists('action','add', $data) and } else if (isset($externalMasterIDsArray) and count($externalMasterIDsArray) > 0) { - $inSQLArray = 'm.`externalID` IN (' . implode(',', "'" . $externalMasterIDsArray . "'") . ') AND'; + $inSQLArray = 'm.`externalID` IN (\'' . implode('\', \'', $externalMasterIDsArray) . '\') AND'; } $iniConfiguration = array();