Ergebnis 1 bis 5 von 5

Thema: Teamspeak php Problem

  1. #1
    Fortgeschrittene/r
    Registriert seit
    10.07.2004
    Ort
    München
    Beiträge
    167
    Danke
    0
    Bekam 0 mal "Danke" in 0 Postings

    Standard Teamspeak php Problem

    Ich hab hier ein Script das auf einer Homepage ein Fenster anzeigen soll wo ein Teamspeakserver abgebildet ist mit seinen Räumen aber bei mir gibts da eine Fehlermeldung. Vielleicht kann mir da einer Weiterhelfen...

    Die Dateistruktur ist folgende:

    teamspeak/TS-Viewer_small-config.php
    teamspeak/navigation/navbox.TS-Viewer_small.php

    Und hier die beiden Scripte von den Beiden Dateien und die Fehlermeldung die sich bei mir ergiebt...


    Script von TS-Viewer_small-config.php

    Code:
    <?php
    // TS-Viewer_small-config.php
    class tss2infosmall &#123;
    // &#40;c&#41; 2003 by Christian Müller
    // non-commercial use approved, commercial users please contact me at mueller@fmi.uni-passau.de
    // i give no guarantees whatsoever about the correct functioning of this script
    // use at your own risk
    // date&#58; 20/06/03, 23&#58;28
    //
    // umgecodet und gestyled von Dooki
    // Bei Problemem mit dem Script bitte bei Dooki melden.. dooki@php-gfx.net
    //
    /*#################################*\
    ##\¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯/##
    ###>    created by php-gfx.net   <###
    ##/_______________________________\##
    \*#################################*/
    //
    //-------------------------------------------------------------------------------------------------
    // **** Einstellungen ****
    var $sitetitle       = "TeamSpeak"; // SeitenTitle der neben den Kopfhörern steht
    var $serverAddress   = "213.221.110.200"; // Hier die TeamSpeak IP Adresse eintragen !!wichtig!! &#40;Beispiel&#58; 192.168.7.1&#41;
    var $serverQueryPort = "51234"; // TeamSpeak QueryPort.. Schau in die server.ini von TeamSpeak &#40;Standard 51234&#41;
    var $serverUDPPort   = "8767"; // UDP Port für Teamspeak der auch hinter der IP Adresse genutzt wird &#40;Standard 8767&#41;
    var $serverPasswort  = ""; // Serverpasswort das bei Serversettings eingestellt wird &#40;wenn kein Passwort erteilt, dann leer lassen&#41;
    // &#40;Passwort wird meistens bei Clanservern gebraucht&#41;
    var $connectionLink  = "1"; // Abfrage ob ein Link zum connecten sein soll oder nicht! 0 = NEIN, 1 = JA
    // **** Einstellungen ****
    //-------------------------------------------------------------------------------------------------
    //
    // Das entfernen des © &#40;Copyright&#41; ist untersagt.
    // Die verlinkung bleibt ebenfalls bestehen!
    //
    /*##########################################################################*\
    ##\¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯/##
    ###\   Der hier vorgestellte Download, darf ausschliesslich nur von       /###
    ####\  www.php-gfx.net runtergeladen werden! Jegliche Vervielfältigung   /####
    ####/  oder Weiterverbreitung in jedem Medium als Ganzes oder in Teilen  \####
    ###/   bedarf der schriftlichen Zustimmung von php-gfx.net.               \###
    ##/________________________________________________________________________\##
    \*##########################################################################*/
    //
    // Abweichungen vom Orginalcode stammen von Dooki und wurden konmmentiert
    //
    /* Ab hier darf >>> KEIN <<< Text mehr geändert werden */
    /****************************************************************************
       Der folgende Code ist der Orginalcode von Christian Müller
       &#40;sämtliche Kommentare wurden von mir, Dooki, rausgelöscht&#41;
       Eine Verbreitung des Codes bedarf einer schriftlichen Zusage des Coders
    ****************************************************************************/
    
    //-------------------------------------------------------------------------------------------------
    //---> Orginalcode
    var $socket;
    var $serverStatus = "offline";
    var $playerList = array&#40;&#41;;
    var $channelList = array&#40;&#41;;
    function getSocket&#40;$host, $port, $errno, $errstr, $timeout&#41; &#123;
      unset&#40;$socket&#41;;
      $attempts = 1;
      while&#40;$attempts <= 1 and !$socket&#41; &#123;
    	$attempts++;
        @$socket = fsockopen&#40;$host, $port, $errno, $errstr, $timeout&#41;;
        $this->errno = $errno;
        $this->errstr = $errstr;
        if&#40;$socket and fread&#40;$socket, 4&#41; == "&#91;TS&#93;"&#41; &#123;
          fgets&#40;$socket, 128&#41;;
          return $socket;
    	&#125;
      &#125;
      return false;
    &#125;
    function sendQuery&#40;$socket, $query&#41; &#123;
      fputs&#40;$socket, $query."\n"&#41;;
    &#125;
    function getOK&#40;$socket&#41; &#123;
      $result = fread&#40;$socket, 2&#41;;
      fgets&#40;$socket, 128&#41;;
      return&#40;$result == "OK"&#41;;
    &#125;
    function closeSocket&#40;$socket&#41; &#123;
      fputs&#40;$socket, "quit"&#41;;
      fclose&#40;$socket&#41;;
    &#125;
    function getNext&#40;$evalString&#41; &#123;
      $pos = strpos&#40;$evalString, "\t"&#41;;
      if&#40;is_integer&#40;$pos&#41;&#41; &#123;
        return substr&#40;$evalString, 0, $pos&#41;;
      &#125; else &#123;
        return $evalString;
      &#125;
    &#125;
    function chopNext&#40;$evalString&#41; &#123;
      $pos = strpos&#40;$evalString, "\t"&#41;;
      if&#40;is_integer&#40;$pos&#41;&#41; &#123;
        return substr&#40;$evalString, $pos + 1&#41;;
      &#125; else &#123;
        return "";
      &#125;
    &#125;
    function stripQuotes&#40;$evalString&#41; &#123;
      if&#40;strpos&#40;$evalString, '"'&#41; == 0&#41; $evalString = substr&#40;$evalString, 1, strlen&#40;$evalString&#41; - 1&#41;;
      if&#40;strrpos&#40;$evalString, '"'&#41; == strlen&#40;$evalString&#41; - 1&#41; $evalString = substr&#40;$evalString, 0, strlen&#40;$evalString&#41; - 1&#41;;
      return $evalString;
    &#125;
    function getVerboseCodec&#40;$codec&#41; &#123;
      if&#40;$codec == 0&#41; &#123;
        $codec = "CELP 5.1 Kbit";
      &#125; elseif&#40;$codec == 1&#41; &#123;
        $codec = "CELP 6.3 Kbit";
      &#125; elseif&#40;$codec == 2&#41; &#123;
        $codec = "GSM 14.8 Kbit";
      &#125; elseif&#40;$codec == 3&#41; &#123;
        $codec = "GSM 16.4 Kbit";
      &#125; elseif&#40;$codec == 4&#41; &#123;
        $codec = "CELP Windows 5.2 Kbit";
      &#125; elseif&#40;$codec == 5&#41; &#123;
        $codec = "Speex 3.4 Kbit";
      &#125; elseif&#40;$codec == 6&#41; &#123;
        $codec = "Speex 5.2 Kbit";
      &#125; elseif&#40;$codec == 7&#41; &#123;
        $codec = "Speex 7.2 Kbit";
      &#125; elseif&#40;$codec == 8&#41; &#123;
        $codec = "Speex 9.3 Kbit";
      &#125; elseif&#40;$codec == 9&#41; &#123;
        $codec = "Speex 12.3 Kbit";
      &#125; elseif&#40;$codec == 10&#41; &#123;
        $codec = "Speex 16.3 Kbit";
      &#125; elseif&#40;$codec == 11&#41; &#123;
        $codec = "Speex 19.5 Kbit";
      &#125; elseif&#40;$codec == 12&#41; &#123;
        $codec = "Speex 25.9 Kbit";
      &#125; else &#123;
        $codec = "unknown &#40;".$codec."&#41;";
      &#125;
      return $codec;
    &#125;
    function getInfo&#40;&#41; &#123;
    $this->socket = $this->getSocket&#40;$this->serverAddress, $this->serverQueryPort, $errno, $errstr, 0.3&#41;;
    if&#40;$this->socket == false&#41; &#123;
      return;
      echo &#40;"No Server"&#41;;
    &#125; else &#123;
      $this->serverStatus = "online";
      $this->sendQuery&#40;$this->socket, "sel ".$this->serverUDPPort&#41;;
      if&#40;!$this->getOK&#40;$this->socket&#41;&#41; &#123;
        echo "Server didn't answer \"OK\" after last command. Aborting.";
        return;
      &#125;
      $this->sendQuery&#40;$this->socket,"pl"&#41;;
      $this->playerList = array&#40;&#41;;
      do &#123;
        $playerinfo = fscanf&#40;$this->socket, "%s %d %d %d %d %d %d %d %d %d %d %d %d %s %s"&#41;; // Teilweise Änderung von Dooki
        list&#40;$playerid, $channelid, $receivedpackets, $receivedbytes, $sentpackets, $sentbytes, $paketlost, $pingtime, $totaltime, $idletime, $privileg, $userstatus, $attribute, $s, $playername&#41; = $playerinfo;
        if&#40;$playerid != "OK"&#41; &#123;
          $this->playerList&#91;$playerid&#93; = array&#40;
          "playerid" => $playerid,
          "channelid" => $channelid,
          "receivedpackets" => $receivedpackets,
          "receivedbytes" => $receivedbytes,
          "sentpackets" => $sentpackets,
          "sentbytes" => $sentbytes,
          "paketlost" => $paketlost / 100,
    //-------------------------------------------------------------------------------------------------
          "pingtime" => $pingtime, // hinzugefügt von Dooki
          "totaltime" => $totaltime, // hinzugefügt von Dooki
          "idletime" => $idletime, // hinzugefügt von Dooki
          "privileg" => $privileg, // hinzugefügt von Dooki
          "userstatus" => $userstatus, // hinzugefügt von Dooki
          "attribute" => $attribute, // hinzugefügt von Dooki
    //-------------------------------------------------------------------------------------------------
          "s" => $s,
          "playername" => $this->stripQuotes&#40;$playername&#41;&#41;;
        &#125;
      &#125; while&#40;$playerid != "OK"&#41;;
      $this->sendQuery&#40;$this->socket,"cl"&#41;;
      $this->channelList = array&#40;&#41;;
      do &#123;
        $channelinfo = "";
        do &#123;
          $input = fread&#40;$this->socket, 1&#41;;
          if&#40;$input != "\n" && $input != "\r"&#41; $channelinfo .= $input;
        &#125; while&#40;$input != "\n"&#41;;
        $channelid = $this->getNext&#40;$channelinfo&#41;;
        $channelinfo = $this->chopNext&#40;$channelinfo&#41;;
        $codec = $this->getNext&#40;$channelinfo&#41;;
        $channelinfo = $this->chopNext&#40;$channelinfo&#41;;
        $parent = $this->getNext&#40;$channelinfo&#41;;
        $channelinfo = $this->chopNext&#40;$channelinfo&#41;;
        $d = $this->getNext&#40;$channelinfo&#41;;
        $channelinfo = $this->chopNext&#40;$channelinfo&#41;;
        $maxplayers = $this->getNext&#40;$channelinfo&#41;;
        $channelinfo = $this->chopNext&#40;$channelinfo&#41;;
        $channelname = $this->getNext&#40;$channelinfo&#41;;
        $channelinfo = $this->chopNext&#40;$channelinfo&#41;;
        $d = $this->getNext&#40;$channelinfo&#41;;
        $channelinfo = $this->chopNext&#40;$channelinfo&#41;;
        $d = $this->getNext&#40;$channelinfo&#41;;
        $channelinfo = $this->chopNext&#40;$channelinfo&#41;;
        $topic = $this->getNext&#40;$channelinfo&#41;;
        if&#40;$channelid != "OK"&#41; &#123;
          if&#40;$isdefault == "Default"&#41; $isdefault = 1; else $isdefault = 0;
          $playercount = 0;
          foreach&#40;$this->playerList as $playerInfo&#41; &#123;
            if&#40;$playerInfo&#91;channelid&#93; == $channelid&#41; $playercount++;
          &#125;
          $this->channelList&#91;$channelid&#93; = array&#40;
          "channelid" => $channelid,
          "codec" => $codec,
          "parent" => $parent,
          "maxplayers" => $maxplayers,
          "channelname" => $this->stripQuotes&#40;$channelname&#41;,
          "isdefault" => $isdefault,
          "topic" => $this->stripQuotes&#40;$topic&#41;,
          "currentplayers" => $playercount&#41;;
        &#125;
      &#125; while&#40;$channelid != "OK"&#41;;
      $this->closeSocket&#40;$this->socket&#41;;
      &#125;
    &#125;
    &#125;
    $tss2infosmall = new tss2infosmall;
    //---> Orginalcode
    //-------------------------------------------------------------------------------------------------
    ?>
    Script von navbox.TS-Viewer_small.php


    Code:
    <?php
    // navbox.TS-Viewer_small.php
    //
    // &#40;c&#41; 2003 by Christian Müller
    // non-commercial use approved, commercial users please contact me at mueller@fmi.uni-passau.de
    // i give no guarantees whatsoever about the correct functioning of this script
    // use at your own risk
    // date&#58; 20/06/03, 23&#58;28
    //
    // umgecodet und gestyled von Dooki
    // Bei Problemem mit dem Script bitte bei Dooki melden.. dooki@php-gfx.net
    //
    /*#################################*\
    ##\¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯/##
    ###>    created by php-gfx.net   <###
    ##/_______________________________\##
    \*#################################*/
    //
    /*##########################################################################*\
    ##\¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯/##
    ###\   Der hier vorgestellte Download, darf ausschliesslich nur von       /###
    ####\  www.php-gfx.net runtergeladen werden! Jegliche Vervielfältigung   /####
    ####/  oder Weiterverbreitung in jedem Medium als Ganzes oder in Teilen  \####
    ###/   bedarf der schriftlichen Zustimmung von php-gfx.net.               \###
    ##/________________________________________________________________________\##
    \*##########################################################################*/
    //
    //-------------------------------------------------------------------------------------------------
    //---> Orginalcode
    require&#40;"TS-Viewer_small-config.php"&#41;;
    $tss2infosmall->getInfo&#40;&#41;;
    //---> Orginalcode
    //-------------------------------------------------------------------------------------------------
    //---> Anfang <---\\
    $tsviewer_small = "<table border=\"0\" width=\"100%\" cellpadding=\"0\" cellspacing=\"1\">
     <tr>
      <td class=\"navbg".$navalign."\" width=\"100%\" align=\"center\">".$tss2infosmall->sitetitle."</td>
     </tr>";
    //---> Anfang <---\\
    //-------------------------------------------------------------------------------------------------
    //---> Orginalcode
    $counter = 0;
    foreach&#40;$tss2infosmall->channelList as $channelInfo&#41; &#123;
      $channelname = $channelInfo&#91;channelname&#93;;
      $codec = $tss2infosmall->getVerboseCodec&#40;$channelInfo&#91;codec&#93;&#41;;
      if&#40;$channelInfo&#91;isdefault&#93; == "1"&#41;  $isDefault = "yes"; else $isDefault = "no";
      if &#40;$channelInfo&#91;channelid&#93; != "id"&#41; &#123;
    //---> Orginalcode
    //-------------------------------------------------------------------------------------------------
    //---> PHPKIT Userabfrage
        $tsviewerusername = $USER&#91;nick&#93;;
        $tsv_array_1 = array&#40;" ","&#91;","&#93;","&#40;","&#41;","&#123;","&#125;"&#41;; // Das wird gesucht..
        $tsv_array_2 = array&#40;"_","","","","","",""&#41;; // ..und mit diesem ersetzt!
        $tsv_counter = count&#40;$tsv_array_1&#41;; // 
        for&#40;$x=0;$x<$tsv_counter;$x++&#41;&#123;
          $tsviewerusername = str_replace&#40;$tsv_array_1&#91;$x&#93;,$tsv_array_2&#91;$x&#93;,$tsviewerusername&#41;;
        &#125;
    //---> PHPKIT Userabfrage
    //-------------------------------------------------------------------------------------------------
        if&#40;$max_players < $channelInfo&#91;maxplayers&#93;&#41; &#123;
          unset&#40;$max_players&#41;;
          $max_players = $channelInfo&#91;maxplayers&#93;;
        &#125;    
        unset&#40;$add&#41;;
        $add = $channelInfo&#91;currentplayers&#93;;
        $current_players = $current_players+$add;
    //-------------------------------------------------------------------------------------------------
    //---> Orginalcode
      &#125;
      $counter++;
    &#125;
    //---> Orginalcode
    //-------------------------------------------------------------------------------------------------
    //---> Offline <---\\
    if &#40;$counter == 0&#41; &#123;
      $tsviewer_small .= " <tr>
      <td width=\"100%\" align=\"center\"><font class=\"headssmall\">Offline</font></td>
     </tr>";
    &#125; else &#123;
      //---> Channel <---\\
      if&#40;$tss2infosmall->connectionLink == 1&#41; &#123;
       $tsviewer_small .= " <tr>
        <td class=\"navbg".$navalign."\" width=\"100%\" align=\"center\"><a class=\"nav".$navalign."\" href=\"teamspeak&#58;//".$tss2infosmall->serverAddress."&#58;".$tss2infosmall->serverUDPPort."?channel=?password=".$tss2infosmall->serverPasswort."?nickname=".$tsviewerusername."\">".$current_players." / ".$max_players."</a></td>
       </tr>";
      &#125; else &#123;
       $tsviewer_small .= " <tr>
        <td class=\"navbg".$navalign."\" width=\"100%\" align=\"center\">".$current_players." / ".$max_players."</td>
       </tr>";
      &#125;
      //---> Channel <---\\
    &#125;
    //---> Offline <---\\
    //-------------------------------------------------------------------------------------------------
    //---> Ende <---\\
    $tsviewer_small .= "</table>";
    //---> Ende <---\\
    //-------------------------------------------------------------------------------------------------
    $boxlinks&#91;&#93; = $tsviewer_small;
    ?>

    Und hier die Fehlermeldung die es immer anzeigt:

    Code:
    Warning&#58; main&#40;TS-Viewer_small-config.php&#41;&#58; failed to open stream&#58; No such file or directory in /home/www/web128/html/ts/navigation/navbox.TS-Viewer_small.php on line 30
    
    Fatal error&#58; main&#40;&#41;&#58; Failed opening required 'TS-Viewer_small-config.php' &#40;include_path='.&#58;/usr/lib/php'&#41; in /home/www/web128/html/ts/navigation/navbox.TS-Viewer_small.php on line 30
    Achtung: Dies ist ein alter Thread im HTML und Webmaster Forum
    Diese Diskussion ist älter als 90 Tage. Die darin enthaltenen Informationen sind möglicherweise nicht mehr aktuell. Erstelle bitte zu deiner Frage ein neues Thema im Forum !!!!!
    eraserx

  2. #2
    Youngster
    Registriert seit
    20.09.2004
    Beiträge
    10
    Danke
    0
    Bekam 0 mal "Danke" in 0 Postings

    Standard

    Du nutzt PHPKIT?

    Wenn ja haste etwas falsch hochgeladen.. die config gehört in dein phpkit hauptverzeichnis und die navbox in den ordner navigation..

    ist beides so geschehen sollte es gehen..

    nutzt du kein phpkit, kannst du mit diesem Script nichts anfangen und solltest Version 1.1 nutzen!

  3. #3
    Fortgeschrittene/r
    Themenstarter

    Registriert seit
    10.07.2004
    Ort
    München
    Beiträge
    167
    Danke
    0
    Bekam 0 mal "Danke" in 0 Postings

    Standard

    Mein problem hat sich schon gelöst aber trotzdem danke
    eraserx

  4. #4
    phoenix
    Gast

    Standard

    Nabend,

    folgendes, der TS-Viewer hat ja ein Problem mit Leerzeichen in Nicknames. Meine Frage nun, wie muss der unten aufgeführte Code ausehen damit auch Nicks angezeigt werden die nach diesem Sonderzeichen [ und einem drauffolgendem Leerzeichen einen Nick enthalten.

    Bsp:

    ]clanxy[ Userxy

    Denn immoment würde man im Viewer nur ]clanxy[ sehen, der Rest wäre "abgeschnitten".

    //---> PHPKIT Userabfrage
    $tsviewerusername = $USER[nick];
    $tsv_array_1 = array(" ","[","]","(",")","{","}"); // Das wird gesucht..
    $tsv_array_2 = array("_","","","","","",""); // ..und mit diesem ersetzt!
    $tsv_counter = count($tsv_array_1); //
    for($x=0;$x<$tsv_counter;$x++){
    $tsviewerusername = str_replace($tsv_array_1[$x],$tsv_array_2[$x],$tsviewerusername);
    }
    //---> PHPKIT Userabfrage

    Ich hoffe Ihr könnt mir helfen.

    phoenix

  5. #5
    Youngster
    Registriert seit
    20.09.2004
    Beiträge
    10
    Danke
    0
    Bekam 0 mal "Danke" in 0 Postings

    Standard

    Der TS-Viewer wie er momentan ist, kann nur BIS zu einem leerzeichen auslesen..

    was du dort gepostet hast, ist das connecten IN den viewer per Homepage.. dort werden diese Zeichen sofort "geblockt"..

    die klammern deswegen, weil diese standardmässig ind er serverversion 2.0.20.*** geblockt werden.. das leerzeichen darum damit man im viewer komplett sichtbar ist.. dieses wird dort zu einem _ gemacht, damit wenigstens noch eine tennung stattfindet..

    somit bleibt der bug vorhanden mit diesem script..

    alle ausgaben vom server werden durch leerzeichen getrennt.. somit bricht er dort ab.. hoffe das ein wenig erklärt zu haben.. und verstanden worden zu sein

Ähnliche Themen

  1. Teamspeak Viewer PHP Problem
    Von Ole im Forum PHP Forum - Apache - CGI - Perl - JavaScript und Co.
    Antworten: 7
    Letzter Beitrag: 10.03.2009, 17:34
  2. Teamspeak Sever problem
    Von Kralle im Forum Off Topic und Quasselbox
    Antworten: 17
    Letzter Beitrag: 12.06.2008, 16:27
  3. Problem mit Teamspeak Viewer
    Von Allpa im Forum PHP Forum - Apache - CGI - Perl - JavaScript und Co.
    Antworten: 4
    Letzter Beitrag: 06.04.2008, 10:03
  4. Teamspeak Viwer - Problem
    Von firefigther im Forum HTML & CSS Forum
    Antworten: 0
    Letzter Beitrag: 21.01.2008, 16:24
  5. Teamspeak Vergabe an alle*!!! Free Teamspeak! bitte lesen!
    Von Shredder im Forum Sponsor gesucht !
    Antworten: 1
    Letzter Beitrag: 18.05.2007, 14:35

Stichworte

Berechtigungen

  • Neue Themen erstellen: Nein
  • Themen beantworten: Nein
  • Anhänge hochladen: Nein
  • Beiträge bearbeiten: Nein
  •