bé en faites, je suis pas parti de tsdisplay,
j'essaye d'adapter tsstatus sur un bloc, chose assez simple a la base, quand on s'y connais :p
ya bien longtemps que j'ai plus toucher au codage php, c'est un peu comme le velo ca s'oubli pas, mais faut le temps pour que ca revienne et je bloc encore un poil sur la parti administration x:
Mais si c'etait trop facile ca ne serais pas drole =D vive la chauve attitude =D
Edit
bon bé La ca deviens complexe pour ma pauvre ptite tete mdr, j'ai reussi le plus simple :x
donc bien modifier ,via la parti administration, l'ip, le port query port et le sid, + l'integrer la gestion et tout ca, c'est passé presque comme une lettre a la poste.
maintenant pour me simplifier un peu la tache, j'ai commencer par l'appel d'une page et non d'un bloc, et la ! ca coince.
j'arrive pas a insérer les 2 fichier ( 1 css et l'autre js )
et biensur erreur blabla truc muche machin + erreur copy de kws :p avec par ailleur aucune affichage de l'image :x
Réponse ci-dessus posté le dimanche 29 août 2010 : 15:10
bon j'arrive a un pti truc sympa,
par contre j'arrive pas a faire intervenir le socket :x
Socket error: []
j'adore :p
Zauriez pas un pti truc de dessous l'bras pour tester ou par le socket ?
j'ai essayé un echo, manque de pot ca m'indique tout le code
Code PHP :
Pour copier le contenu exact du code,
Veuillez citer le message
<?php
#####!!!#####
-
-
private function queryServer()
{
$this->_socket = @fsockopen($host, $queryPort, $errno, $errstr, $this->timeout);
if($this->_socket)
{
@socket_set_timeout($this->_socket, $this->timeout);
$isTs3 = trim(fgets($this->_socket)) == "TS3";
if(!$isTs3) throw new Exception("Not a Teamspeak 3 server/bad query port");
-
if($this->_login !== false)
{
$this->sendCommand("login client_login_name=" . $this->_login . " client_login_password=" . $this->_password);
}
$response = "";
$response .= $this->sendCommand("use sid=" . $ServeurId . );
$response .= $this->sendCommand("serverinfo");
$response .= $this->sendCommand("channellist -topic -flags -voice -limits");
$response .= $this->sendCommand("clientlist -uid -away -voice -groups");
$response .= $this->sendCommand("servergrouplist");
$response .= $this->sendCommand("channelgrouplist");
$this->disconnect();
if($this->decodeUTF8) $response = utf8_decode($response);
-
return $response;
}
else throw new Exception("Socket error: $errstr [$errno]");
}
private function disconnect()
{
@fputs($this->_socket, "quit\n");
@fclose($this->_socket);
}
-
-
#####!!!#####
?>
bon alors j'ai fais appel a la base de donné pour avoir l'adresse, le port et le sid
Code PHP :
Pour copier le contenu exact du code,
Veuillez citer le message
<?php
#####!!!#####
-
-
$df_requete = reqmysql('
SELECT *
FROM `teamspeak`
');
while ($df_ligne = mysql_fetch_object($df_requete))
{
-
-
#####!!!#####
?>
bon par contre je me demande si le reste est correct, vu qu'a la base ce script est un générateur et donc ne prend pas de base sql
Code PHP :
Pour copier le contenu exact du code,
Veuillez citer le message
<?php
#####!!!#####
-
-
class TSStatus
{
private $df_ligne->ip;
private $df_ligne->portquery;
private $df_ligne->sid;
private $_socket;
private $_updated;
private $_serverDatas;
private $_channelDatas;
private $_userDatas;
private $_serverGroupFlags;
private $_channelGroupFlags;
private $_login;
private $_password;
private $_cacheFile;
private $_cacheTime;
private $_limitedChannels;
public $imagePath;
public $decodeUTF8;
public $showNicknameBox;
public $timeout;
public function TSStatus($host, $queryPort, $serverId)
{
$df_ligne->id = $host;
$df_ligne->portquery = $queryPort;
$df_ligne->sid = $serverId;
$this->_socket = null;
$this->_updated = false;
$this->_serverDatas = array();
$this->_channelDatas = array();
$this->_userDatas = array();
$this->_serverGroupFlags = array();
$this->_channelGroupFlags = array();
$this->_login = false;
$this->_password = false;
$this->_cacheTime = 0;
$this->_cacheFile = __FILE__ . ".cache";
$this->_limitedChannels = array();
$this->imagePath = "modules/teamspeak/tsstatus/img/";
$this->decodeUTF8 = false;
$this->showNicknameBox = true;
$this->showPasswordBox = false;
$this->timeout = 2;
}
-
-
#####!!!#####
?>
je pense que ya moyen de faire qqch, je test tj et encore, je bidouille, trifouille, mais la j'avoue que ca dois etre un truc tout
et je bloc.
Pour info quand je place sur une autre page le code pour appeler sql +
Code PHP :
Pour copier le contenu exact du code,
Veuillez citer le message
<?php
#####!!!#####
-
-
echo '<tr>
<td>'.$df_ligne->ip.'</td>
<td>'.$df_ligne->portquery.'</td>
<td>'.$df_ligne->sid.'</td>
</tr>';
-
-
#####!!!#####
?>
je vois l'affichage de tout donc ca ne peux venir que de moi qui dois merder a un endroit
Réponse ci-dessus posté le dimanche 29 août 2010 : 18:22
bon probleme identifié
Code PHP :
Pour copier le contenu exact du code,
Veuillez citer le message
<?php
#####!!!#####
-
-
$tsstatus = new TSStatus("' . $host . '", ' . $port . ', ' . $sid .');
-
-
#####!!!#####
?>
j'ai tester en mettant les données pur et ca fonctionne ( dit il avec un ouf de semi soullagement :p )
Mais par contre je vois pas pkoi ca ne veux pas appeller les donner de ma base