Aktuelle Version: 1.5.5.4
Willkommen auf DZCP.deUser online: 0
Forum
deV!L`z Clanportal Forum: PHP, MySQL und Java Script Thread: TS Viewer anzeige auf genutze Channel begrenzen
TS Viewer anzeige auf genutze Channel begrenzen Seite: « 1 2 3 »
#1 am 09.01.2010 um 13:37 Uhr Diesen Beitrag zitieren
bre2ake
User
Posts: 202

moin,moin,

 

wie der Titel schon sagt, würde ich gern im TS Viewer die Anzeige auf die Channel begrenzen in denen auch leute drin sind.

Es geht mir dabei NICHT um ../teamspeak/!!!

 

ich weiss es gab genau dazu schonmal einen Thread, doch auf diesen kann man nicht mehr zugreifen!

 

wäre über jede Hilfe dankbar...

 

beste Grüße

 


IP gespeichert
#2 am 09.01.2010 um 14:01 Uhr Diesen Beitrag zitieren
Neo@Bln
Moderator
Posts: 255

Ich hab das damals nach der alten anleitung bei mir gemacht, weiß nur nichtmehr welche dateien ich bearbeitet habe, dann könnt ich meine hier posten. traurig.gif

 

 

Edit: Hier mal meine Teamspeak/index.php

 

Teste die mal!

 

########################################################

 

<?php
## OUTPUT BUFFER START ##
include("../inc/buffer.php");
## INCLUDES ##
include($basePath."/inc/config.php");
include($basePath."/inc/bbcode.php");
## SETTINGS ##
$time_start = generatetime();
lang($language);
$where = _site_teamspeak;
$title = $pagetitle." - ".$where."";
$dir = "teamspeak";
## SECTIONS ##
if(function_exists(fopen))
{
$qry = db("SELECT ts_port, ts_sport, ts_ip FROM ".$db['settings']."");
$s = _fetch($qry);

$uip      = $s['ts_ip'];
$tPort = $s['ts_sport'];
$port  = $s['ts_port'];

$fp = @fsockopen($uip, $tPort, $errno, $errstr, 2);

if(!$fp)
{
$index = error(_error_no_teamspeak, 1);
} else {
$out = "";

fputs($fp, "sel ".$port."n");
fputs($fp, "sin");
fputs($fp, "quitn");
while(!feof($fp))
{
$out .= fgets($fp, 1024);
}
$out = str_replace("[TS]", "", $out);
$out = str_replace("OK", "", $out);
$out = trim($out);

$name=substr($out,indexOf($out,"server_name="),strlen($out));
$name=substr($name,0,indexOf($name,"server_platform=")-strlen("server_platform="));
$os=substr($out,indexOf($out,"server_platform="),strlen($out));
$os=substr($os,0,indexOf($os,"server_welcomemessage=")-strlen("server_welcomemessage="));
$uptime=substr($out,indexOf($out,"server_uptime="),strlen($out));
$uptime=substr($uptime,0,indexOf($uptime,"server_currrentusers=")-strlen("server_currrentusers="));
$cAmount=substr($out,indexOf($out,"server_currentchannels="),strlen($out));
$cAmount=substr($cAmount,0,indexOf($cAmount,"server_bwinlastsec=")-strlen("server_bwinlastsec="));
$user=substr($out,indexOf($out,"server_currentusers="),strlen($out));
$user=substr($user,0,indexOf($user,"server_currentchannels=")-strlen("server_currentchannels="));
$max=substr($out,indexOf($out,"server_maxusers="),strlen($out));
$max=substr($max,0,indexOf($max,"server_allow_codec_celp51=")-strlen("server_allow_codec_celp51="));
fclose($fp);
}

$uArray = array();
$innerArray = array();
$out = "";
$j = 0;
$k = 0;

$fp = fsockopen($uip, $tPort, $errno, $errstr, 30);
if($fp)
{
fputs($fp, "pl ".$port."n");
fputs($fp, "quitn");
while(!feof($fp))
{
$out .= fgets($fp, 1024);
}
$out = str_replace("[TS]", "", $out);
$out = str_replace("loginname", "loginnamet", $out);
$data    = explode("t", $out);

for($i=0;$i<count($data);$i++)
{
$innerArray[$j] = $data[$i];
if($j>=15)
{
$uArray[$k]=$innerArray;
$j = 0;
$k = $k+1;
} else {
$j++;
}
}
fclose($fp);
}
$debug = false;

for($i=1;$i<count($uArray);$i++)
{
$innerArray=$uArray[$i];
$p = setUserStatus($innerArray[12])."&nbsp;<span class="fontBold">".removeChar($innerArray[14])."</span>
&nbsp;(".setPPriv($innerArray[11])."".setCPriv($innerArray[10]).")";

$class = ($color % 2) ? "contentMainSecond" : "contentMainFirst"; $color++;
$userstats .= show($dir."/userstats", array("player" => $p,
"channel" => getChannelName($innerArray[1],$uip,$port,$tPort),
"misc1" => $innerArray[6],
"class" => $class,
"misc2" => $innerArray[7],
"misc3" => time_convert($innerArray[8]),
"misc4" => time_convert($innerArray[9])));
}

$uArr = getTSChannelUsers($uip,$port,$tPort);
$pcArr = Array();
$ccArr = Array();
$thisArr = Array();
$listArr = Array();
$usedArr = Array();
$cArr    = getChannels($uip,$port,$tPort);
$z = 0;
$x = 0;

for($i=0;$i<count($cArr);$i++)
{
$innerArr=$cArr[$i];
$listArr[$i]=$innerArr[3];
}
sort($listArr);
for($i=0;$i<count($listArr);$i++)
{
for($j=0;$j<count($cArr);$j++)
{
$innArr=$cArr[$j];

if($innArr[3]==$listArr[$i] && usedID($usedArr,$innArr[0]))
{
if($innArr[2]==-1)
{
$thisArr[0] = $innArr[0];
$thisArr[1] = $innArr[5];
$thisArr[2] = $innArr[2];
$pcArr[$z] = $thisArr;
$usedArr[count($usedArr)] = $innArr[0];
$z++;
} else {
$thisArr[0] = $innArr[0];
$thisArr[1] = $innArr[5];
$thisArr[2] = $innArr[2];
$ccArr[$x] = $thisArr;
$usedArr[count($usedArr)] = $innArr[0];
$x++;
}
}
}
}

for($i=0;$i<count($pcArr);$i++)
{
$innerArr=$pcArr[$i];

$subchan = "";
for($j=0;$j<count($ccArr);$j++)
{
$innerCCArray=$ccArr[$j];
if($innerArr[0]==$innerCCArray[2])
{
for($p=1;$p<count($uArr);$p++)
{
$subusers = "";
for($p=1;$p<count($uArr);$p++)
{
$innerUArray=$uArr[$p];
if($innerCCArray[0]==$innerUArray[1])
{
$subusers .= "&nbsp;&nbsp;&nbsp;&nbsp;<img src="../inc/images/tsicons/trenner.gif" alt="" class="tsicon" />".setUserStatus($innerUArray[12])."&nbsp;<span class="fontBold">".removeChar($innerUArray[14])."</span>&nbsp;(".setPPriv($innerUArray[11])."".setCPriv($innerUArray[10]).")<br />";
}
}
}
$subchannels = "<img src="../inc/images/tsicons/trenner.gif" alt="" class="tsicon" /><img src="../inc/images/tsicons/channel.gif" alt="" class="tsicon" /><a style="font-weight:normal" href="?cID=".$innerCCArray[0]."&amp;type=1">&nbsp;".removeChar($innerCCArray[1])."&nbsp;</a><br /> ".$subusers."";
$subchan .= show($dir."/subchannels", array("subchannels" => $subchannels));
}
}
$users = "";
for($k=1;$k<count($uArr);$k++)
{
$innerUArray=$uArr[$k];
if($innerArr[0]==$innerUArray[1])
{
$users .= "<img src="../inc/images/tsicons/trenner.gif" alt="" class="tsicon" />".setUserStatus($innerUArray[12])."<span class="fontBold">".removeChar($innerUArray[14])."</span>&nbsp;(".setPPriv($innerUArray[11])."".setCPriv($innerUArray[10]).")<br />";
}
}

$channels = "<img src="../inc/images/tsicons/channel.gif" alt="" class="tsicon" />&nbsp;<a style="font-weight:bold" href="?cID=".trim($innerArr[0])."&amp;type=1">".removeChar($innerArr[1])."&nbsp;</a><br /> ".$users."";
$chan .= show($dir."/channel", array("channel" => $channels,
"subchannels" => $subchan));
}

if(isset($_GET['cID']))
{
$cID     = $_GET['cID'];
$type    = $_GET['type'];
} else {
$cID     = 0;
$type    = 0;
}

if($type==0)     $info = defaultInfo($uip,$tPort,$port);
elseif($type==1) $info = channelInfo($uip,$tPort,$port,$cID);

$index = show($dir."/teamspeak", array("name" => $name,
"os" => $os,
"uptime" => time_convert($uptime),
"user" => $user,
"t_name" => _ts_name,
"t_os" => _ts_os,
"uchannels" => $chan,
"info" => $info,
"t_uptime" => _ts_uptime,
"t_channels" => _ts_channels,
"t_user" => _ts_user,
"head" => _ts_head,
"users_head" => _ts_users_head,
"player" => _ts_player,
"channel" => _ts_channel,
"channel_head" => _ts_channel_head,
"max" => $max,
"channels" => $cAmount,
"logintime" => _ts_logintime,
"idletime" => _ts_idletime,
"channelstats" => $channelstats,
"userstats" => $userstats));
} else {
$index = error(_fopen,1);
}
## SETTINGS ##
$time_end = generatetime();
$time = round($time_end - $time_start,4);
page($index, $title, $where,$time);
## OUTPUT BUFFER END ##
gz_output();
?>

 

 

#####################################################################



zuletzt editiert von Neo@Bln am 09.01.2010 14:07 Uhr 



www.clan-holyshit.de

IP gespeichert
#3 am 09.01.2010 um 14:42 Uhr Diesen Beitrag zitieren
bre2ake
User
Posts: 202

vielen dank, aber bis auf das ../teamspeak/ nicht mehr funzt, tut sich da rein gar nichts.

ich bin auch der meinung damals gelsen zu haben, dass man dieses in der bbcode realisiert...

 

aber vielen dank für den ansatz

 


IP gespeichert
#4 am 09.01.2010 um 14:50 Uhr Diesen Beitrag zitieren
Hogibo.net
Designer
Posts: 965

So viel ich weiß ist es nicht möglich einfach eine abfrage zu stellen da man  nur eine IP abfrage macht aber keine  abfrage ob eine userID vorhanden ist...

Das wäre w*****einlich möglich bei einem eigenen Root.

 



Hast du woanders das schon mal gesehen?

 


 Hogibo - gameserver - teamspeaks Server - Webserver - So Einfach kann die Lösung sein
Webspace | Homepagebaukasten | so einfach kann die Lösung sein  www.Hogibo.net

IP gespeichert
#5 am 09.01.2010 um 14:56 Uhr Diesen Beitrag zitieren
bre2ake
User
Posts: 202

jaein selber gesehen nicht, aber es gab hier mal einen Thread darüber. in diesem wurde genau das beschrieben, doch seit dem letzten angriff, kann man auf diesen nicht mehr zugreifen...

 


IP gespeichert
#6 am 09.01.2010 um 16:19 Uhr Diesen Beitrag zitieren
Hogibo.net
Designer
Posts: 965

hm nun der Angriff löschte nicht den forumpost....

 

 

 

 


 Hogibo - gameserver - teamspeaks Server - Webserver - So Einfach kann die Lösung sein
Webspace | Homepagebaukasten | so einfach kann die Lösung sein  www.Hogibo.net

IP gespeichert
#7 am 09.01.2010 um 22:32 Uhr Diesen Beitrag zitieren
Neo@Bln
Moderator
Posts: 255

Ich  find den alten post auch nicht mehr.

Damls hat mir dan Richy geholfen das ganze umzusetzen.

 

 

Vergleich mal den teil aus meiner bbcode mit deiner, die ja noch original ist!

Ich hab bei mir nur die subchannel ausgeblendet, und es werden nur die angezeigt wo ein user drin ist.

 

--------------------------------------

 

$subchannels = " ".removeChar($innerCCArray[1])."
".$subusers."";
$sc = empty($subusers) ? '' : $subchannels;
$subchan .= show("menu/teamspeak_subchan", array("subchannels" => $sc));
}

 

------------------------------------

 

Früher war hier mal nen button so das man nen php code einfügen kann ohne das er zerissen wird, wo ist der eigendlich?

 

Mfg Neo



zuletzt editiert von Neo@Bln am 09.01.2010 22:33 Uhr 



www.clan-holyshit.de

IP gespeichert
#8 am 09.01.2010 um 22:35 Uhr Diesen Beitrag zitieren
bre2ake
User
Posts: 202

poste sowas am besten HIER und stell mir dann den link dazu ein, thx

 


IP gespeichert
#9 am 09.01.2010 um 22:40 Uhr Diesen Beitrag zitieren
Neo@Bln
Moderator
Posts: 255

ok, kommt in ca 2 min

 

So, dann hier mal der link

 

Im vergleich zur originalen hab ich in zeile 117 das hier mehr:

 

$sc = empty($subusers) ? '' : $subchannels;

 

was jetzt noch ander ist hab ich auf die schnelle nicht gesehn



zuletzt editiert von Neo@Bln am 09.01.2010 22:44 Uhr 



www.clan-holyshit.de

IP gespeichert
#10 am 10.01.2010 um 00:59 Uhr Diesen Beitrag zitieren
bre2ake
User
Posts: 202

vielen dank, dass funzt schonmal perfekt

 

habe auch versucht dieses auf die Hauptchannel anzuwenden, dieses klappt jedoch nicht ganz so wie ich mir das vorstelle.

 

HIER mal mein jetziger ausschnitt aus der bbcode.

in den Zeilen 132-133 ist das ganze für die Hauptchannel zu finden, dieses habe ich zuerst mit dem HIER ersetzt. jedoch werden dann gar KEINE Hauptchannel mehr angezeigt!

 

habe dann dieses HIER versucht, jedoch scheint es dabei einen kleinen Fehler zu geben. Es werden nicht alle Hauptchannel angezeigt. bei einem zeigt er ihn an, bei dem andern nicht???

 


IP gespeichert
#11 am 10.01.2010 um 11:37 Uhr Diesen Beitrag zitieren
Neo@Bln
Moderator
Posts: 255

Ich hab gerade mal meine platte durchsucht, konnte aber keine alten dateien mehr finden, hab da irgendwan mal aufgeräumt.  Im notfall musst du da noch mal Richy anschreiben, aber so wie ich das auf eurer Seite sehe, würde es doch reichen wen die subchannel nur weg sind, weil wenn du alle ausblendest, und keiner im TS ist hast du dann dort ein leeres feld und wie sieht denn das dan aus.



zuletzt editiert von Neo@Bln am 10.01.2010 11:38 Uhr 



www.clan-holyshit.de

IP gespeichert
Seite: « 1 2 3 »

Templatebar.de - Die Plattform für Templates, Designs, Modifikationen und mehr!

 

Als Kunde findest du hier günstige Templates, Designs und Modifkationen und als Verkäufer eine einzigartige Verkaufsplattform für deine Produkte.

 

Schau am besten noch heute vorbei!

 

www.templatebar.de