Skocz do zawartości
  • 👋 Witaj na MPCForum!

    Przeglądasz forum jako gość, co oznacza, że wiele świetnych funkcji jest jeszcze przed Tobą! 😎

    • Pełny dostęp do działów i ukrytych treści
    • Możliwość pisania i odpowiadania w tematach
    • System prywatnych wiadomości
    • Zbieranie reputacji i rozwijanie swojego profilu
    • Członkostwo w jednej z największych społeczności graczy

    👉 Dołączenie zajmie Ci mniej niż minutę – a zyskasz znacznie więcej!

    Zarejestruj się teraz

Status administracji serwera na stronie


karox

Rekomendowane odpowiedzi

Opublikowano

Witam 
Stworzyłem funkcje php sprawdzającą obecność użytkownika na serwerze po Database ID. Mi przydała się do zrobienia statusu administracji online a komuś może przydać się do czegoś innego. :D
Do działania potrzebuje ts3admin.class (zawrte w paczce).

<?php		
#Funkcja sprawdzająca obecność po DB_ID
function test($arg1)
{
	////////////////////////////////
	/////Konfiguracja połącznia////
	///////////////////////////////
	$ts3_ip = 'IP_SERWERA';
	$ts3_queryport = 10011;
	$ts3_port = 9987;
	$ts3_user = 'serveradmin';
	$ts3_pass = 'PASSWORD';
	require("./src/ts3admin.class.php");

	#Łączenie z serwerem
	$tsAdmin = new ts3admin($ts3_ip, $ts3_queryport);

	#Sprawdzanie czy połączenie się udało
	if($tsAdmin->getElement('success', $tsAdmin->connect()))
		{
			#Logowanie do serwera
			$tsAdmin->login($ts3_user, $ts3_pass);

			#Wybieranie serwera
			$tsAdmin->selectServer($ts3_port);
			
			#Sprawdzanie nick'u z DB_ID
			$dbinfo = $tsAdmin->clientDbInfo($arg1);
			$nick = $dbinfo['data']['client_nickname'];
			
			#Sprawdzanie czy osoba o danym nick'u jest na serwerze
			$clientinfo = $tsAdmin->clientFind($nick);
			$onlinecheck = $clientinfo['success'];
			
			#Sprawdzenie cid użytkownika o danym nick'u
			$clid = $clientinfo['data']['0']['clid'];
			
			if($onlinecheck==1)
			{
				#Sprawdzenie DB_ID obecnego użytkownika za pomocą jego cid
				$dbidcheck = $tsAdmin->clientInfo($clid);
				$dbid = $dbidcheck['data']['client_database_id'];
				
				#Sprawdzenie czy DB_ID obecnego użytkownika zgadza się z zadeklarowanym
				if($dbid==$arg1)
				{
					return '<font color="green">Online</font>';
				}
				else
				{
					return '<font color="red">Offline</font>';
				}
				
			}
			else
			{
				return '<font color="red">Offline</font>';
			}

		}
		else
		{
			return '<font color="red">Błąd</font>';
		}
}

#Przykład użycia
//$admin1 = test(308);
//print "$admin1";

$a1 = test(DB_ID);
$a2 = test(DB_ID);
$a3 = test(DB_ID);
$a4 = test(DB_ID);

print '<h1 style="padding: 0; margin: 0; text-align: center;">
		Admin1: '.$a1.' |
		Admin2: '.$a2.' |
		Admin3: '.$a3.' |
		Admin4: '.$a4.'</h1>';	
?>

Dodaj wymagany skan.

Zarchiwizowany

Ten temat przebywa obecnie w archiwum. Dodawanie nowych odpowiedzi zostało zablokowane.

×
×
  • Dodaj nową pozycję...