function getServerInfo($ip, $port, $translation) { $SQ_SERVER_ADDR = $ip; $SQ_SERVER_PORT = $port; $SQ_TIMEOUT = 5; $SQ_ENGINE = SourceQuery::SOURCE; $Query = new SourceQuery(); $connect = $translation['table_headers']['connect']; $nick = $translation['table_headers']['nick']; $score = $translation['table_headers']['score']; $time = $translation['table_headers']['time']; try { $Query->Connect($SQ_SERVER_ADDR, $SQ_SERVER_PORT, $SQ_TIMEOUT, $SQ_ENGINE); $ip = $SQ_SERVER_ADDR . ':' . $SQ_SERVER_PORT; $server_info = $Query->GetInfo(); if ($server_info !== false) { $server_name = $server_info['HostName']; $server_map = $server_info['Map']; $server_port = $server_info['GamePort']; $server_max = $server_info['MaxPlayers']; $server_players = $server_info['Players']; $players = $Query->GetPlayers(); $result = '<tr class="server" data-key="' . $server_info['ServerID'] . '" data-game-folder="csgo"> <td class="icon"><img src="./..//images/games/csgo.png" alt="Counter-Strike: Global Offensive" title="Counter-Strike: Global Offensive"></td> <td class="ServerQuery_VAC icon"><img src="./../images/secure.png" alt="Valve Anti-Cheat"></td> <td class="ServerQuery_hostname">'; $result .= '<a href="steam://connect/' . $ip . '" title="'; $result .= $connect; $result .= '">'; $result .= $server_name; $result .= '</a>'; $result .= '</td> <td class="ServerQuery_players">'; $result .= $server_players . '/' . $server_max; $result .= '</td> <td class="ServerQuery_map">'; $result .= $server_map; $result .= '</td> </tr>'; $result .= '<tr class="section" id="server-section-' . $server_info['ServerID'] . '"> <td colspan="6"> <div> <table class="table table-condensed table-hover pull-left" style="max-width: 430px"> <thead> <tr> <th>'; $result .= $nick; $result .= '</th> <th class="nowrap text-right">'; $result .= $score; $result .= '</th> <th class="nowrap">'; $result .= $time; $result .= '</th> </tr> </thead> <tbody>'; foreach ($players as $player) { if ($player['Name'] !== '') { $result .= '<tr class="player" > <td>'; $result .= $player['Name']; $result .= '</td> <td class="text-right">'; $result .= $player['Frags']; $result .= '</td> <td class="nowrap text-right">'; $result .= $player['TimeF']; $result .= '</td></tr>'; } } $result .= '</tbody> </table> <div class="pull-right">'; if (@getimagesize('http://ezpz.cz/images/maps/csgo/' . $server_map . '.jpg') === false) { $result .= '<img alt="' . $server_map . '" class="map-image img-rounded" width="340px" height="255px" src="./../images/maps/unknown.jpg">'; } else { $result .= '<img alt="' . $server_map . '" class="map-image img-rounded" width="340px" height="255px" src="./../images/maps/csgo/' . $server_map . '.jpg">'; } $result .= '<div class="well text-center"><p>' . $ip . '</p> <a class="btn btn-success" href="steam://connect/' . $ip . '">'; $result .= $connect; $result .= '</a> </div> </div> </div> </td> </tr>'; } } catch (Exception $e) { $result .= $e; } return $result; }
public function post(Request $request, Application $app) { $sourceQuery = new \SourceQuery(); try { $ip = $request->get('serverIp'); $port = $request->get('port'); $appId = $request->get('appid'); $sourceQuery->Connect($ip, $port, 1, $appId); $result = array('success' => true, 'data' => array('info' => $sourceQuery->GetInfo(), 'players' => $sourceQuery->GetPlayers())); $result['success'] = is_array($result['data']['info']) && is_array($result['data']['players']); return new JsonResponse($result); } catch (\Exception $e) { return new JsonResponse(array('success' => FALSE, 'message' => $e->getMessage())); } $sourceQuery->Disconnect(); }
/** * @author João Reis * @return array */ function _getStatus() { global $_ip, $_portaQuery, $_objQuery; // Objeto para Query's $_objQuery = new SourceQuery(); try { // Conectar-se ao servidor $_objQuery->Connect($_ip, $_portaQuery, 1, SourceQuery::GOLDSOURCE); #print_r($_objQuery); $Info = array(); $Jogadores = array(); $Regras = array(); // Retornar Plugins neste caso sao Regras $_Regras = $_objQuery->GetRules(); // Retornar lista de Jogadores $Jogadores = $_objQuery->GetPlayers(); // Retornar Informação do servidor. $Info = $_objQuery->GetInfo(); $_MapaAtual = $Info['Map']; $_SlotsUsados = $Info['Players']; $_MaxSlots = $Info['MaxPlayers']; $_Versao = $Info['Version']; // Passar lista de jogadores recebida em algo Global para que o painel perceba. $JogadoresJ = array(); if (count($Jogadores) > 0 && $Info != null) { foreach ($Jogadores as $Jogador) { $JogadoresJ[] = utf8_encode($Jogador["Name"]); } } $_Jogadores = $JogadoresJ; $_Plugins = $Regras; } catch (Exception $e) { $_MapaAtual = "....."; $_SlotsUsados = "....."; $_MaxSlots = "....."; $_Versao = "1.0.0"; } return array("Map" => $_MapaAtual, "Players" => $_SlotsUsados, "MaxPlayers" => $_MaxSlots, "Playerlist" => $_Jogadores, "Plugins" => $_Regras, "Versao" => $_Versao); }
require __DIR__ . '/SourceQuery/SourceQuery.class.php'; // Edit this -> define('SQ_SERVER_ADDR', 'localhost'); define('SQ_SERVER_PORT', 27015); define('SQ_TIMEOUT', 1); define('SQ_ENGINE', SourceQuery::SOURCE); // Edit this <- $Timer = MicroTime(true); $Query = new SourceQuery(); $Info = array(); $Rules = array(); $Players = array(); try { $Query->Connect(SQ_SERVER_ADDR, SQ_SERVER_PORT, SQ_TIMEOUT, SQ_ENGINE); $Info = $Query->GetInfo(); $Players = $Query->GetPlayers(); $Rules = $Query->GetRules(); } catch (Exception $e) { $Exception = $e; } $Query->Disconnect(); $Timer = Number_Format(MicroTime(true) - $Timer, 4, '.', ''); ?> <!DOCTYPE html> <html> <head> <meta charset="utf-8"> <title>Source Query PHP Class</title> <link rel="stylesheet" href="http://netdna.bootstrapcdn.com/bootstrap/3.0.0-rc1/css/bootstrap.min.css"> <style type="text/css">
<?php require __DIR__ . '/SourceQuery/SourceQuery.class.php'; // For the sake of this example Header('Content-Type: text/plain'); Header('X-Content-Type-Options: nosniff'); // Edit this -> define('SQ_SERVER_ADDR', 'localhost'); define('SQ_SERVER_PORT', 27015); define('SQ_TIMEOUT', 1); define('SQ_ENGINE', SourceQuery::SOURCE); // Edit this <- $Query = new SourceQuery(); try { $Query->Connect(SQ_SERVER_ADDR, SQ_SERVER_PORT, SQ_TIMEOUT, SQ_ENGINE); print_r($Query->GetInfo()); print_r($Query->GetPlayers()); print_r($Query->GetRules()); } catch (Exception $e) { echo $e->getMessage(); } $Query->Disconnect();
<tbody> <?php // Select Bans $SelectServers = $db->query("SELECT * FROM `servers`"); // Print Output foreach ($SelectServers as $PrintServers) { // Query Server define('SQ_TIMEOUT', 1); define('SQ_ENGINE', SourceQuery::SOURCE); $ServerQuery = new SourceQuery(); $ServerInfo = array(); $ServerPlayers = array(); try { $ServerQuery->Connect($PrintServers['IPAddress'], $PrintServers['Port'], SQ_TIMEOUT, SQ_ENGINE); $ServerInfo = $ServerQuery->GetInfo(); $ServerPlayers = $ServerQuery->GetPlayers(); } catch (Exception $e) { echo "Something went wrong try again later!"; } $ServerQuery->Disconnect(); echo "\n\t\t\t\t\t\t\t<tr>\n\t\t\t\t\t\t\t\t<td><b>" . $PrintServers['ServerID'] . "</b></td>\n\t\t\t\t\t\t\t\t<td><a href='steam://connect/" . $PrintServers['IPAddress'] . ":" . $PrintServers['Port'] . "'>" . $PrintServers['IPAddress'] . ":" . $PrintServers['Port'] . "</a></td>\n\t\t\t\t\t\t\t\t<td>" . $PrintServers['HostName'] . "</td>\n\t\t\t\t\t\t\t\t<td>" . htmlspecialchars($ServerInfo['ModDesc']) . "</td>\n\t\t\t\t\t\t\t\t<td>" . htmlspecialchars($ServerInfo['Map']) . "</td>\n\t\t\t\t\t\t\t\t<td>" . htmlspecialchars($ServerInfo['Players']) . " / " . htmlspecialchars($ServerInfo['MaxPlayers']) . "</td>\n\t\t\t\t\t\t\t</tr>\n\t\t\t\t\t\t"; } ?> </tbody> </table> </div> <!-- ./Servers --> <!-- Bans --> <div class="panel panel-<?php echo $PColor;
<?php require 'steamauth/steamauth.php'; if (!isset($_SESSION['authed'])) { header("Location: steamauth/logout.php?noadmin"); die; } require 'SourceQuery/SourceQuery.class.php'; $squery = new SourceQuery(); require 'config.php'; $squery->connect($server_ip, $server_port + 1, 3, SourceQuery::SOURCE); $sdata = $squery->GetInfo(); $on_players = $squery->GetPlayers(); $connection = mysqli_connect($db_ip, $db_user, $db_pass, $db_name); $plys = mysqli_query($connection, "SELECT * FROM players"); $c_cash = 0; $c_bank = 0; $c_ply = 0; $c_med = 0; $c_cop = 0; $c_civ = 0; $c_vehc = 0; $c_vehc_active = 0; $c_gangs = 0; $c_plys_in_gang = 0; $c_g_mstmembrs = 0; $c_gang_mny = 0; $g_biggest = "None"; while ($row = mysqli_fetch_row($plys)) { $c_cash += $row[3]; $c_bank += $row[4];
</head> <body> <?php error_reporting(-1); require __DIR__ . '/SourceQuery/SourceQuery.class.php'; define('SQ_SERVER_ADDR', '37.187.170.178'); //zero one define('SQ_SERVER_PORT', 2303); define('SQ_TIMEOUT', 1); define('SQ_ENGINE', SourceQuery::SOURCE); $Query = new SourceQuery(); try { $Query->Connect(SQ_SERVER_ADDR, SQ_SERVER_PORT, SQ_TIMEOUT, SQ_ENGINE); $players_online = $Query->GetInfo()['Players']; $arma_online = true; $playerlist = $Query->GetPlayers(); /* echo '<pre>'; //print_r( $Query->GetInfo( ) ); echo print_r($playerlist['0']['Name']); echo '</pre>'; echo $playerlist; */ } catch (Exception $e) { echo $e->getMessage(); } //TEAMSPEAK 3 CHECK $ts_ip = "ts.zero-one.cc"; $ts_port = "10011"; $online0 = @fsockopen($ts_ip, $ts_port, $errno, $errstr, 1); if ($arma_online == true && $online0 >= 1 && $players_online > -1) {