Nouveau sujet Répondre Imprimer Syndication RSS 2.0

[Réglé] Soucis avec l'affichage des info()

Les fonctions php relatives aux sockets ne fonctionnent plus
Feu follet
Avatar de Shaigan
  • Age : 26 ans
  • Messages : 243
  • Inscrit : 11 Juin 2006
Message édité 5 fois, dernière édition par Shaigan, 17 Novembre 2006, 19:42     Lien vers ce message 13 Novembre 2006, 11:52
Bonjour à tous.

Sur mon site de jeu de rôle en réseau, j'affiche les status des différents serveurs par des points verts ou rouge. Tout fonctionne très bien tant que je n'appelle pas la fonction "info()" qui affiche un message de confirmation ou un choix "oui / non". Lorsque cette fonction est appelée, les points disparaissent.

Quand ça marche:
http://img294.imageshack.us/img294/3839/image1tw8.th.jpg
IP : 83.203.150.162
<table border="0" cellspacing="0" cellpadding="0" width="118" align="center" valign="center">
  <tr>
    <td width="60px" align="left">Login :</td><td align="right"><img src="themes/Prophecy/images/fr/en_ligne.gif" border="0" alt="" title="" align="absmiddle" /></td>
    </tr>


Quand ça marche pas:
http://img294.imageshack.us/img294/4654/image2rq9.th.jpg
IP : 
<table border="0" cellspacing="0" cellpadding="0" width="118" align="center" valign="center">
  <tr>
    <td width="60px" align="left">Login :</td><td align="right"></td>
  </tr>
Je connais le status des serveurs via ce code dans config.php:
$serveur_ip = gethostbyname('server-prophecy.game-host.org');
et via celui-ci dans header.php:
$serveurip = $serveur_ip;
$tpl->set_filenames(array('header' => ( $simple_header ) ? 'simple_header.tpl' : 'header.tpl'));

$tpl->assign_vars( array(
	'SERVEUR_IP' =>		$serveurip,
	'IMG_LOGIN' =>		( @fsockopen($serveurip, 2106,$un,$sinn,2) ) ? sprintf($theme['img'], 'themes/' . $membre['membre_theme'] . 'images/' . $membre['membre_langue'] . 'en_ligne.gif', 'ON', 'ON') : sprintf($theme['img'], 'themes/' . $membre['membre_theme'] . 'images/' . $membre['membre_langue'] . 'hors_ligne.gif', 'OFF', 'OFF'),
));
'SERVEUR_IP' est la variable qui contient l'adresse IP, et 'IMG_LOGIN' l'image du point vert ou rouge indiquant le status du serveur d'authentification du jeu, en écoute sur le port 2106.

J'en appelle à votre grand savoir pour m'aiguiller sur une solution possible. Notez bien que l'importante est mineure, puisque par définition, le message d'info est fugitif et qu'on revient sur une page complète sur laquelle le code fonctionne parfaitement.

Merci infiniment de votre aide bienveillante :D


http://prophecy.servhome.org/forum/images/bannieres/shanoen.png http://prophecy.servhome.org/forum/images/bannieres/shaigan.png http://prophecy.servhome.org/forum/images/bannieres/carpark.png
 
Flamme ardente
Avatar de TCool
  • Age : 25 ans
  • Messages : 470
  • Inscrit : 04 Février 2005
  Lien vers ce message 13 Novembre 2006, 16:09
Salut,

il te faut passer par des globals, car la fonction info() c'est elle qui appelle le header et le footer.

Donc comme elle ne connais pas ses variables elle donne un null.

@++,
TCooL


TCooL TCooL
MonFSB, hébergement de son forum fsb gratuit ^^
Zoneur And PurPle développement ^^
Tous mes MOD dispo ici
 
Feu follet
Avatar de Shaigan
  • Age : 26 ans
  • Messages : 243
  • Inscrit : 11 Juin 2006
Message édité 1 fois, dernière édition par Shaigan, 13 Novembre 2006, 18:02     Lien vers ce message 13 Novembre 2006, 17:55
Citation (TCool)
la fonction info() c'est elle qui appelle le header et le footer

Ben oui, et dans le header, je charge bien le fichier "config.php" non ?
C'est là que je ne pige pas. Tout le reste s'affiche bien, j'ai toujours accès à la DB pour les autres infos, et la connexion à la DB est stockée dans le fichier config.php il me semble. Pourquoi ces trucs là ne s'affichent pas ?


http://prophecy.servhome.org/forum/images/bannieres/shanoen.png http://prophecy.servhome.org/forum/images/bannieres/shaigan.png http://prophecy.servhome.org/forum/images/bannieres/carpark.png
 
Flamme ardente
Avatar de TCool
  • Age : 25 ans
  • Messages : 470
  • Inscrit : 04 Février 2005
  Lien vers ce message 14 Novembre 2006, 0:17
lut,

Géno a ajouté dans la fonction info() ce qu'il faut pour le header, footer à savoir tpl, cache, bdd, etc...

@++,
TCooL


TCooL TCooL
MonFSB, hébergement de son forum fsb gratuit ^^
Zoneur And PurPle développement ^^
Tous mes MOD dispo ici
 
Feu follet
Avatar de Shaigan
  • Age : 26 ans
  • Messages : 243
  • Inscrit : 11 Juin 2006
  Lien vers ce message 14 Novembre 2006, 11:50
Pas tout compris mais bon, j'vais voir avec les globals ce que ça donne.

Merci du conseil.


http://prophecy.servhome.org/forum/images/bannieres/shanoen.png http://prophecy.servhome.org/forum/images/bannieres/shaigan.png http://prophecy.servhome.org/forum/images/bannieres/carpark.png
 
Equipe des MODS
Avatar de Korko
  • Age : 22 ans
  • Messages : 2687
  • Inscrit : 06 Octobre 2004
  Lien vers ce message 17 Novembre 2006, 15:51
dans includes/functions/fonctions_page.php

cherche un truc du genre
function info($info_titre, $info_msg, $info_ligne = '', $info_fichier = '', $info_requete = '', $info_sortie = TRUE)
{
	global $config, $langue, $membre, $racine, $repertoires, $tpl, $bdd, $PAGE_OK;


apres
$PAGE_OK

ajoute
, $serveur_ip


Ce qui te donnera donc un truc comme ça
function info($info_titre, $info_msg, $info_ligne = '', $info_fichier = '', $info_requete = '', $info_sortie = TRUE)
{
	global $config, $langue, $membre, $racine, $repertoires, $tpl, $bdd, $PAGE_OK, $serveur_ip;


Dieu vous aime. Offre soumise à conditions
Je suis une Brute
 
Feu follet
Avatar de Shaigan
  • Age : 26 ans
  • Messages : 243
  • Inscrit : 11 Juin 2006
  Lien vers ce message 17 Novembre 2006, 19:41
Aaaaaaaah ok. J'étais loin de penser à ça...

Mici bcp.


http://prophecy.servhome.org/forum/images/bannieres/shanoen.png http://prophecy.servhome.org/forum/images/bannieres/shaigan.png http://prophecy.servhome.org/forum/images/bannieres/carpark.png
 
Equipe des MODS
Avatar de Korko
  • Age : 22 ans
  • Messages : 2687
  • Inscrit : 06 Octobre 2004
  Lien vers ce message 17 Novembre 2006, 21:35
De rien ;)


Dieu vous aime. Offre soumise à conditions
Je suis une Brute
 
Répondre


.