Evil04
12-09-2004, 18:36
can some1 tell me how u make this work so i can put this on my site thx i get error
<?php
$usemarquee = 1;
$scrolldirection = "Up";
// **** settings - to be edited before first use ****
$serverAddress = "68.0.159.53:"; // can be ip address or url
$serverQueryPort = 14534; // default 14534, must be accessible and usable. check server.ini
$serverUDPPort = 8767; // default 8767
// **** end of settings ****
if (eregi("block-TeamspeakV2.php", $PHP_SELF)) {
Header("Location: index.php");
die();
}
global $user, $cookie, $prefix, $anonymous, $dbi, $user_prefix, $username, $admin, $userinfo;
getusrinfo($username);
cookiedecode($username);
$username = $cookie[1];
// opens a connection to the teamspeak server
function getSocket($host, $port, $errno, $errstr, $timeout) {
global $errno, $errstr;
@$socket = fsockopen($host, $port, $errno, $errstr, $timeout);
if($socket and fread($socket, 4) == "[TS]") {
fgets($socket, 128);
return $socket;
}// end if
return false;
}// end function getSocket(...)
// sends a query to the teamspeak server
function sendQuery($socket, $query) {
fputs($socket, $query."\n");
}
// answer OK?
function getOK($socket) {
$result = fread($socket, 2);
fgets($socket, 128);
return($result == "OK");
}
// closes the connection to the teamspeak server
function closeSocket($socket) {
fputs($socket, "quit");
fclose($socket);
}
// retrieves the next argument in a tabulator-separated string (PHP scanf function bug workaround)
function getNext($evalString) {
$pos = strpos($evalString, "\t");
if(is_integer($pos)) {
return substr($evalString, 0, $pos);
}
else {
return $evalString;
}
}
// removes the first argument in a tabulator-separated string (PHP scanf function bug workaround)
function chopNext($evalString) {
$pos = strpos($evalString, "\t");
if(is_integer($pos)) {
return substr($evalString, $pos + 1);
}
else {
return ;
}
}
// MAIN PROGRAM START
// establish connection to teamspeak server
$socket = getSocket($serverAddress, $serverQueryPort, $errno, $errstr, 3);
if($socket == false) {
$content .= "An error connecting to the TeamSpeak server has occured!<br>\n";
$content .= "Error number: ".$errno."<br>\n";
$content .= "Error description: ".$errstr."<br>\n";
return;
}
// select the one and only running server on port 8767
sendQuery($socket, "sel ".$serverUDPPort);
// retrieve answer "OK"
if(!getOK($socket)) {
die("Server didn't answer "OK" after last command. Aborting.");
}// end if
// retrieve player list
sendQuery($socket,"pl");
// read player info
$playerList = array();
do {
$playerinfo = fscanf($socket, "%s\t%d\t%d\t%d\t%d\t%d\t%d\t%d\t%d\t%d\t%d\t%d\t%d \t%s\t%s");
list($playerid, $channelid, $receivedpackets, $receivedbytes, $sentpackets, $sentbytes, $d, $d, $totaltime, $idletime, $d, $d, $d, $s, $playername) = $playerinfo;
if($playerid != "OK") {
$playerList[$playerid] = array(playerid => $playerid,
channelid => $channelid,
receivedpackets => $receivedpackets,
receivedbytes => $receivedbytes,
sentpackets => $sentpackets,
sentbytes => $sentbytes,
totaltime => $totaltime,
idletime => $idletime,
playername => $playername);
}
} while($playerid != "OK");
// retrieve channel list
sendQuery($socket,"cl");
// read channel info
$channelList = array();
do {
$channelinfo = "";
do {
$input = fread($socket, 1);
if($input != "\n" && $input != "\r") $channelinfo .= $input;
} while($input != "\n");
$channelid = getNext($channelinfo);
$channelinfo = chopNext($channelinfo);
$codec = getNext($channelinfo);
$channelinfo = chopNext($channelinfo);
$parent = getNext($channelinfo);
$channelinfo = chopNext($channelinfo);
$d = getNext($channelinfo);
$channelinfo = chopNext($channelinfo);
$maxplayers = getNext($channelinfo);
$channelinfo = chopNext($channelinfo);
$channelname = getNext($channelinfo);
$channelinfo = chopNext($channelinfo);
$d = getNext($channelinfo);
$channelinfo = chopNext($channelinfo);
$d = getNext($channelinfo);
$channelinfo = chopNext($channelinfo);
$topic = getNext($channelinfo);
if($channelid != "OK") {
if($isdefault == "Default") $isdefault = 1; else $isdefault = 0;
// determine number of players in channel
$playercount = 0;
foreach($playerList as $playerInfo) {
if($playerInfo[channelid] == $channelid) $playercount++;
}
$channelList[$channelid] = array(channelid => $channelid,
codec => $codec,
parent => $parent,
maxplayers => $maxplayers,
channelname => $channelname,
isdefault => $isdefault,
topic => $topic,
currentplayers => $playercount);
}
} while($channelid != "OK");
$content .= "<!----- drop down ----->\n";
$content .= "<TABLE BORDER=0 align=center target=_blank CELLPADDING=0 CELLSPACING=0>\n";
$content .= "<TR><FORM METHOD=GET ACTION=\"modules.php\">\n";
$content .= "<select name=\"select15\" onChange=\"window.open(this.options[this.selectedIndex].value,'_blank','height=300 width=225')\">";
$content .= "<OPTION VALUE=\"\">Channels";
$content .= "<OPTION VALUE=\"webpost/login.php?nickname=$username&detail=1&channel=me\">me\n";
$content .= "<OPTION VALUE=\"webpost/login.php?nickname=$username&detail=1&channel=xxxxxxxxxxx\">xxxxx\n";
$content .= "<OPTION VALUE=\"webpost/login.php?nickname=$username&detail=1&channel=xxxxxxxxxxx\">xxxxx\n";
$content .= "<OPTION VALUE=\"webpost/login.php?nickname=$username&detail=1&channel=xxxxxxxxxxx\">xxxxx\n";
$content .= "<OPTION VALUE=\"webpost/login.php?nickname=$username&detail=1&channel=xxxxxxxxxxx\">xxxxx\n";
$content .= "<OPTION VALUE=\"webpost/login.php?nickname=$username&detail=1&channel=xxxxxxxxxxx\">xxxxx\n";
$content .= "<OPTION VALUE=\"webpost/login.php?nickname=$username&detail=1&channel=xxxxxxxxxxx\">xxxxx\n";
$content .= "<OPTION VALUE=\"webpost/login.php?nickname=$username&detail=1&channel=xxxxxxxxxxx\">xxxxx\n";
$content .= "</SELECT></TD></TR></FORM></TABLE>";
// display channel list
$content .= "<table width=\"100%\">\n";
$counter = 0;
foreach($channelList as $channelInfo) {
// default channel?
if($channelInfo[isdefault] == 1) {
$channelname = $channelInfo[channelname];
} else {
$channelname = $channelInfo[channelname];
}
switch ($channelname) {
case "Default":
$link = "webpost/login.php?detail=4&channel=$channelname";
break;
}
$counter++;
foreach ($playerList as $playerInfo) {
if ($channelInfo[channelid] == $playerInfo[channelid]) {
$content .= "<tr><td></td><td colspan=3><img src=\"webpost/images/bullet_0.gif\" alt=$channelInfo[channelname] align=left>".$playerInfo[playername]." </td></tr>\n";
}
}
}
if($counter == 0) $content .= "<tr><td colspan=\"4\" align=\"CENTER\">No channels</td></tr>\n";
$content .= "</table>\n";
// close connection to teamspeak server
closeSocket($socket);
$content .= "<br><center><a href=http://www.teamspeak.org/modules.php?op=modload&name=Downloads&file=index><img src=http://www.evil.dfxcsquad.com/webpost/images/ngz.gif border=\"0\" alt=\"Download TeamSpeak\"></a></center>";
?>
<?php
$usemarquee = 1;
$scrolldirection = "Up";
// **** settings - to be edited before first use ****
$serverAddress = "68.0.159.53:"; // can be ip address or url
$serverQueryPort = 14534; // default 14534, must be accessible and usable. check server.ini
$serverUDPPort = 8767; // default 8767
// **** end of settings ****
if (eregi("block-TeamspeakV2.php", $PHP_SELF)) {
Header("Location: index.php");
die();
}
global $user, $cookie, $prefix, $anonymous, $dbi, $user_prefix, $username, $admin, $userinfo;
getusrinfo($username);
cookiedecode($username);
$username = $cookie[1];
// opens a connection to the teamspeak server
function getSocket($host, $port, $errno, $errstr, $timeout) {
global $errno, $errstr;
@$socket = fsockopen($host, $port, $errno, $errstr, $timeout);
if($socket and fread($socket, 4) == "[TS]") {
fgets($socket, 128);
return $socket;
}// end if
return false;
}// end function getSocket(...)
// sends a query to the teamspeak server
function sendQuery($socket, $query) {
fputs($socket, $query."\n");
}
// answer OK?
function getOK($socket) {
$result = fread($socket, 2);
fgets($socket, 128);
return($result == "OK");
}
// closes the connection to the teamspeak server
function closeSocket($socket) {
fputs($socket, "quit");
fclose($socket);
}
// retrieves the next argument in a tabulator-separated string (PHP scanf function bug workaround)
function getNext($evalString) {
$pos = strpos($evalString, "\t");
if(is_integer($pos)) {
return substr($evalString, 0, $pos);
}
else {
return $evalString;
}
}
// removes the first argument in a tabulator-separated string (PHP scanf function bug workaround)
function chopNext($evalString) {
$pos = strpos($evalString, "\t");
if(is_integer($pos)) {
return substr($evalString, $pos + 1);
}
else {
return ;
}
}
// MAIN PROGRAM START
// establish connection to teamspeak server
$socket = getSocket($serverAddress, $serverQueryPort, $errno, $errstr, 3);
if($socket == false) {
$content .= "An error connecting to the TeamSpeak server has occured!<br>\n";
$content .= "Error number: ".$errno."<br>\n";
$content .= "Error description: ".$errstr."<br>\n";
return;
}
// select the one and only running server on port 8767
sendQuery($socket, "sel ".$serverUDPPort);
// retrieve answer "OK"
if(!getOK($socket)) {
die("Server didn't answer "OK" after last command. Aborting.");
}// end if
// retrieve player list
sendQuery($socket,"pl");
// read player info
$playerList = array();
do {
$playerinfo = fscanf($socket, "%s\t%d\t%d\t%d\t%d\t%d\t%d\t%d\t%d\t%d\t%d\t%d\t%d \t%s\t%s");
list($playerid, $channelid, $receivedpackets, $receivedbytes, $sentpackets, $sentbytes, $d, $d, $totaltime, $idletime, $d, $d, $d, $s, $playername) = $playerinfo;
if($playerid != "OK") {
$playerList[$playerid] = array(playerid => $playerid,
channelid => $channelid,
receivedpackets => $receivedpackets,
receivedbytes => $receivedbytes,
sentpackets => $sentpackets,
sentbytes => $sentbytes,
totaltime => $totaltime,
idletime => $idletime,
playername => $playername);
}
} while($playerid != "OK");
// retrieve channel list
sendQuery($socket,"cl");
// read channel info
$channelList = array();
do {
$channelinfo = "";
do {
$input = fread($socket, 1);
if($input != "\n" && $input != "\r") $channelinfo .= $input;
} while($input != "\n");
$channelid = getNext($channelinfo);
$channelinfo = chopNext($channelinfo);
$codec = getNext($channelinfo);
$channelinfo = chopNext($channelinfo);
$parent = getNext($channelinfo);
$channelinfo = chopNext($channelinfo);
$d = getNext($channelinfo);
$channelinfo = chopNext($channelinfo);
$maxplayers = getNext($channelinfo);
$channelinfo = chopNext($channelinfo);
$channelname = getNext($channelinfo);
$channelinfo = chopNext($channelinfo);
$d = getNext($channelinfo);
$channelinfo = chopNext($channelinfo);
$d = getNext($channelinfo);
$channelinfo = chopNext($channelinfo);
$topic = getNext($channelinfo);
if($channelid != "OK") {
if($isdefault == "Default") $isdefault = 1; else $isdefault = 0;
// determine number of players in channel
$playercount = 0;
foreach($playerList as $playerInfo) {
if($playerInfo[channelid] == $channelid) $playercount++;
}
$channelList[$channelid] = array(channelid => $channelid,
codec => $codec,
parent => $parent,
maxplayers => $maxplayers,
channelname => $channelname,
isdefault => $isdefault,
topic => $topic,
currentplayers => $playercount);
}
} while($channelid != "OK");
$content .= "<!----- drop down ----->\n";
$content .= "<TABLE BORDER=0 align=center target=_blank CELLPADDING=0 CELLSPACING=0>\n";
$content .= "<TR><FORM METHOD=GET ACTION=\"modules.php\">\n";
$content .= "<select name=\"select15\" onChange=\"window.open(this.options[this.selectedIndex].value,'_blank','height=300 width=225')\">";
$content .= "<OPTION VALUE=\"\">Channels";
$content .= "<OPTION VALUE=\"webpost/login.php?nickname=$username&detail=1&channel=me\">me\n";
$content .= "<OPTION VALUE=\"webpost/login.php?nickname=$username&detail=1&channel=xxxxxxxxxxx\">xxxxx\n";
$content .= "<OPTION VALUE=\"webpost/login.php?nickname=$username&detail=1&channel=xxxxxxxxxxx\">xxxxx\n";
$content .= "<OPTION VALUE=\"webpost/login.php?nickname=$username&detail=1&channel=xxxxxxxxxxx\">xxxxx\n";
$content .= "<OPTION VALUE=\"webpost/login.php?nickname=$username&detail=1&channel=xxxxxxxxxxx\">xxxxx\n";
$content .= "<OPTION VALUE=\"webpost/login.php?nickname=$username&detail=1&channel=xxxxxxxxxxx\">xxxxx\n";
$content .= "<OPTION VALUE=\"webpost/login.php?nickname=$username&detail=1&channel=xxxxxxxxxxx\">xxxxx\n";
$content .= "<OPTION VALUE=\"webpost/login.php?nickname=$username&detail=1&channel=xxxxxxxxxxx\">xxxxx\n";
$content .= "</SELECT></TD></TR></FORM></TABLE>";
// display channel list
$content .= "<table width=\"100%\">\n";
$counter = 0;
foreach($channelList as $channelInfo) {
// default channel?
if($channelInfo[isdefault] == 1) {
$channelname = $channelInfo[channelname];
} else {
$channelname = $channelInfo[channelname];
}
switch ($channelname) {
case "Default":
$link = "webpost/login.php?detail=4&channel=$channelname";
break;
}
$counter++;
foreach ($playerList as $playerInfo) {
if ($channelInfo[channelid] == $playerInfo[channelid]) {
$content .= "<tr><td></td><td colspan=3><img src=\"webpost/images/bullet_0.gif\" alt=$channelInfo[channelname] align=left>".$playerInfo[playername]." </td></tr>\n";
}
}
}
if($counter == 0) $content .= "<tr><td colspan=\"4\" align=\"CENTER\">No channels</td></tr>\n";
$content .= "</table>\n";
// close connection to teamspeak server
closeSocket($socket);
$content .= "<br><center><a href=http://www.teamspeak.org/modules.php?op=modload&name=Downloads&file=index><img src=http://www.evil.dfxcsquad.com/webpost/images/ngz.gif border=\"0\" alt=\"Download TeamSpeak\"></a></center>";
?>