PHP - Exit empêche la génération de pages. Hulp :/ !

Statut
N'est pas ouverte pour d'autres réponses.

Carambar

Elite
Je suis occupé à intégrer des scripts dans le forum du clan et j'ai rencontré un problème assez particulier dans un script qui fais que la génération de page est complètement interrompue et que le pied de page phpBB n'est pas ajouté.

Vous pouvez voir ce qui se passe en en regardant la source de cette page avec celle-ci.

En fait le problème se passe à ce niveau ci du script :

Code:
//Return if no variables are set (exit)
if (isset($_GET['txtip']) != 1) return;

//If there is no IP, return (exit)
if (strlen($txtip) == 0) return;
Comme vous pouvez le voir, ces deux conditions font qu'il y a un simple exit. Je voudrais modifier le code pour que la page continue d'être générée correctement. Je ne sais pas si c'est possible.

J'ai aussi une autre question pour les personnes qui connaissent le fonctionnement de phpBB. Pour l'instant, j'ai du coder en dur le lien vers l'index de cette page ci :

http://smiley.lfhost.com/phpBB2/radios.php

Je voudrais savoir comment on procéde pour créer de templates qui permettrais d'insérer le code de manière automatique.
 

guslinux

Gamerz'ien
Fearless a dit:
Je suis occupé à intégrer des scripts dans le forum du clan et j'ai rencontré un problème assez particulier dans un script qui fais que la génération de page est complètement interrompue et que le pied de page phpBB n'est pas ajouté.

Vous pouvez voir ce qui se passe en en regardant la source de cette page avec celle-ci.

En fait le problème se passe à ce niveau ci du script :

Code:
//Return if no variables are set (exit)
if (isset($_GET['txtip']) != 1) return;

//If there is no IP, return (exit)
if (strlen($txtip) == 0) return;
Comme vous pouvez le voir, ces deux conditions font qu'il y a un simple exit. Je voudrais modifier le code pour que la page continue d'être générée correctement. Je ne sais pas si c'est possible.

J'ai aussi une autre question pour les personnes qui connaissent le fonctionnement de phpBB. Pour l'instant, j'ai du coder en dur le lien vers l'index de cette page ci :

http://smiley.lfhost.com/phpBB2/radios.php

Je voudrais savoir comment on procéde pour créer de templates qui permettrais d'insérer le code de manière automatique.
Tu dois asigner une valeur par défault pour les parametres de connection a serveur

Ajoute ca en début de script

Code:
if ($txtip=="") $txtip="62.101.75.66"; // Pour asigner 62.101.75.66 si aucune IP n'a été entrée

if ($portnum=="") $portnum=8251; // Asignement de 8251 si la variable est vide
 
D

DevilsAngel

ex membre
en faite perso, je dirais que les variables n'arrive pas jusque la et que donc ca fait exit ^^

bref fait un echo histoire de voir si tes variables arrive :)

exemple :
arrèté moi si je me trompe

Code:
<?php
$test = $_GET['txtip'];
echo 'je veux voir $test';
?>
vala perso quand ca fonctionne pas c'est ce que je fait et je trouve la solution assez vite :p
 

guslinux

Gamerz'ien
DevilsAngel a dit:
en faite perso, je dirais que les variables n'arrive pas jusque la et que donc ca fait exit ^^

bref fait un echo histoire de voir si tes variables arrive :)

exemple :
arrèté moi si je me trompe

Code:
<?php
$test = $_GET['txtip'];
echo 'je veux voir $test';
?>
vala perso quand ca fonctionne pas c'est ce que je fait et je trouve la solution assez vite :p

c'est + court ca :D :D
Code:
<?php
echo "je veux voir $txtip";
?>
:D
 

kokotchY

Elite
guslinux a dit:
c'est + court ca :D :D
Code:
<?php
echo "je veux voir $txtip";
?>
:D
mais c pas compatible !!!
car dans les dernieres versions de php le register_global est a off... tu es donc obligé de mettre le
$_GET['txtip']; sinon la variable sera vide !
 
1er
OP
Carambar

Carambar

Elite
Merci pour les suggestions et d'voir pris la peine de jeter sur le script même :) .

guslinux a dit:
Tu dois asigner une valeur par défault pour les parametres de connection a serveur

Ajoute ca en début de script

Code:
if ($txtip=="") $txtip="62.101.75.66"; // Pour asigner 62.101.75.66 si aucune IP n'a été entrée

if ($portnum=="") $portnum=8251; // Asignement de 8251 si la variable est vide
En fait, les variables $txtip et $portnum sont des paramètres envoyées à la page php via l'url (ce que tu as certainement compris). Je pense que ton idée serais susceptible de marcher :) .

Je pensais peut être imbriquer les if mais ca ne feras que complexifier le script alors que je connais très mal son fonctionnement.

DevilsAngel a dit:
en faite perso, je dirais que les variables n'arrive pas jusque la et que donc ca fait exit ^^
C'est à peu près ca. Je pensais que ca marcherais en attribuant une valeur par défaut dans le formulaire mais, apparemment le script ne récupère pas ces valeurs.

Si ca coince quelque part, j'ajouterais quelques echos pour voir ce qui se passe exactement :p .
 

guslinux

Gamerz'ien
koko a dit:
guslinux a dit:
c'est + court ca :D :D
Code:
<?php
echo "je veux voir $txtip";
?>
:D
mais c pas compatible !!!
car dans les dernieres versions de php le register_global est a off... tu es donc obligé de mettre le
$_GET['txtip']; sinon la variable sera vide !
c'est vrai method=get ... moi j'utilise tjs le post, c'est plus joli :D ainsi j'ai pas des barres d'adresse de 3km et mes variables sont accessibles direct :wink:
 
1er
OP
Carambar

Carambar

Elite
Aïe, l'ajout de ces deux lignes ne fais pas grand chose comme différence. Je ne suis pas très certain de ce que font ces deux tests mais ca m'énerve. A part ca, le script est bien écrit :p .
 

guslinux

Gamerz'ien
Fearless a dit:
Aïe, l'ajout de ces deux lignes ne fais pas grand chose comme différence. Je ne suis pas très certain de ce que font ces deux tests mais ca m'énerve. A part ca, le script est bien écrit :p .
vi c normal vu que tu utilises un get ... j'avais pensé en POST ...

Code:
if ($_GET['txtip']=="") $_GET['txtip']="62.101.75.66"; // Pour asigner 62.101.75.66 si aucune IP n'a été entrée

if ($_GET['portnum']=="") $_GET['portnum']=8251; // Asignement de 8251 si la variable est vide
 
1er
OP
Carambar

Carambar

Elite
http://smiley.lfhost.com/phpBB2/servers.php

Ca marche :) ! Milles mercis. L'idéal ce serais de réécrire le code mais bon. Je suis tenté de contacter l'auteur du script et de lui demander si je peut en faire un mod pour phpBB :p .
 

guslinux

Gamerz'ien
Fearless a dit:
http://smiley.lfhost.com/phpBB2/servers.php

Ca marche :) ! Milles mercis. L'idéal ce serais de réécrire le code mais bon. Je suis tenté de contacter l'auteur du script et de lui demander si je peut en faire un mod pour phpBB :p .
c'est quoi en fait ce truc ??? l'interfca me plait bien ... c'est un forum ???
 
1er
OP
Carambar

Carambar

Elite
Oui, il s'agit d'un forum phpBB que j'ai monté pour mon clan. Il est assez facile à installer, à personaliser (selon un système de templates) et il est aisément modifiable. Il s'agit d'une bonne alternative a package commercial qu'est vBulletin. D'ailleurs, Gamerz.be utilise phpBB :p .

Le portail ainsi que le calendrier font partie des nombreuses modifications disponibles. Une fois qu'on a compris comment phpBB fonctionne (je ne suis encore que débutant en la matière), il est possible d'y adapter des scripts pour interagir avec le forum et les séssions utilisateurs.

Le site officiel :
http://www.phpbb.com/

Le site francais :
http://www.phpbb-fr.com/ (indisponible pour l'instant :/ )

Le site allemand :
http://www.phpbb.de/

Un bon site pour les modifications (éviter l'utilisation du mot hack en présence de quelqu'un de l'équipe phpBB ;) ) :
http://www.phpbbhacks.com/

Un site sympa de de particulier qui m'as beaucoup appris sur ce genre de forum :
http://www.nounouphpbb.com/
 
N

niafron

ex membre
moi je dis : si ca marche pas une bonne grosse etape de debug s'impose pour cibler l endroit tout pourri

t as deja verifie toutes les variables et tout et tout ??

( oui c super utile ce que je dis mais bon ;) )
 

guslinux

Gamerz'ien
niafron a dit:
moi je dis : si ca marche pas une bonne grosse etape de debug s'impose pour cibler l endroit tout pourri

t as deja verifie toutes les variables et tout et tout ??

( oui c super utile ce que je dis mais bon ;) )
erf du spam ... t'as pas lu tout toi :D il a dit ke ct ok et que ca marchais ...

:arrow: ET BEIN TU SORS ...
 
1er
OP
Carambar

Carambar

Elite
Bon, veuillez m'excuser de ressusciter ce thread mais c'est nécessaire. Depuis un certain temps, j'obtiens un méssage qui me dis undefined index pour les deux variables utilisées et cela à trait au code qu'on m'as suggéré ici. Je ne sais pas si c'est du à un upgrade de la version de PHP. Une idée là dessus ?
 

kokotchY

Elite
je crois que c'est en rapport avec une config de php. Il faut définier les variables avant de les utiliser !!!
donc :
$text = $_GET['text];
if (empty($text)) { $text = ""; } else { $text = $_GET['text']; }

mais j'avais un meilleur code, je vais essayer de le retrouver

[€dit]
$text = empty($_POST['TEXT']) ? "" : $_POST['TEXT'];

voila... tu remplaces text par le nom de la variable et post si tu envoies par l'url (donc ca devient $_GET)
 
Pour ton lien je pense qu'il fodra beaucoup trifouiler ds le moteur de phpbb ...

Pour plus d'infos je te conseil ca :

:arrow: http://forum.phpbb.biz
 
Statut
N'est pas ouverte pour d'autres réponses.
Haut