コード例 #1
0
 function getAminStats($adminSortBy, $adminSortDirection, $adminSearchText)
 {
     $adminSortBy = addslashes($adminSortBy);
     // Prevent SQL Injection
     $adminSortDirection = addslashes($adminSortDirection);
     // Prevent SQL Injection
     $adminSearchText = addslashes($adminSearchText);
     // Prevent SQL Injection
     $sql = "SELECT\r\n\t\t\t\tb.banner AS Admin,\r\n\t\t\t\tCount(b.ban_id) AS NumBaneados,\r\n\t\t\t\tCount(eb.ban_id) AS NumCumplidos,\r\n\t\t\t\tCount(vb.ban_id) AS NumCumpliendose,\r\n\t\t\t\tCount(pb.steam_id) AS NumPermanentes\r\n\t\t\tFROM\r\n\t\t\t\tgban_ban AS b\r\n\t\t\t\tLeft Join gban_ban AS eb ON b.ban_id = eb.ban_id AND (b.expire_date < NOW()) AND b.`length` <> '0' \r\n\t\t\t\tLeft Join gban_ban AS vb ON b.ban_id = vb.ban_id AND (b.expire_date > NOW()) AND b.`length` <> '0'\r\n\t\t\t\tLeft Join gban_ban AS pb ON b.ban_id = pb.ban_id AND b.time_scale = 'minutes' AND b.`length` = 0\r\n\r\n\t\t\tWHERE\r\n\t\t\t\tb.active =  '1'\r\n\t\t\t  AND\r\n\t\t\t\tb.pending = '0'\r\n\r\n\t\t\tGROUP BY\r\n\t\t\t\tb.banner\r\n\r\n\t\t\tORDER BY ";
     $sql .= "" . $adminSortBy . " " . $adminSortDirection . ",NumCumpliendose DESC, NumCumplidos DESC";
     $this->db->sql_query($sql);
     $adminStatsArray = $this->db->get_array();
     $adminStats = array();
     for ($i = 0; $i < count($adminStatsArray); $i++) {
         $adminStat = new AdminStats();
         $admin = $adminStatsArray[$i]['Admin'];
         if ($admin == "") {
             $admin = "Unknown";
         }
         $adminStat->setAdmin($admin);
         $adminStat->setNumBaneados(stripslashes($adminStatsArray[$i]['NumBaneados']));
         $adminStat->setNumCumplidos($adminStatsArray[$i]['NumCumplidos']);
         $adminStat->setNumCumpliendose($adminStatsArray[$i]['NumCumpliendose']);
         $adminStat->setNumPermanentes($adminStatsArray[$i]['NumPermanentes']);
         array_push($adminStats, $adminStat);
         // Add the reason stats object to the array
     }
     return $adminStats;
 }