Problemes avec les pseudo-frames

Résolu
guardian01 Messages postés 9 Date d'inscription dimanche 27 juillet 2003 Statut Membre Dernière intervention 10 juin 2006 - 23 oct. 2005 à 19:10
malalam Messages postés 10839 Date d'inscription lundi 24 février 2003 Statut Membre Dernière intervention 2 mars 2010 - 24 oct. 2005 à 15:08
Guardian01

Bonjour

Mon fichier index.php commence comme ca...

<?
if(!isset($nb)){$nb=1;};

$nb=$_GET['nb'];

Le probleme,
la première fois que j'arrive il ni a pas de varriable et m'affiche une erreur
Les autre fois tous vas bien

Merci d'avance pour la réponse
à bientôt.

Guardian Claude

4 réponses

monoceros01 Messages postés 420 Date d'inscription vendredi 28 novembre 2003 Statut Membre Dernière intervention 20 mars 2006
23 oct. 2005 à 19:57
essaye

$nb = (isset($_GET['nb'])) ? $_GET['nb'] : 1 ;

a la place de tout ça =)
3
malalam Messages postés 10839 Date d'inscription lundi 24 février 2003 Statut Membre Dernière intervention 2 mars 2010 25
24 oct. 2005 à 13:42
Hello,

tss tss...;-)
On balance des opérateurs ternaires à un débutant, et on ne lui explique pas pourquoi ce qu'il a fait ne fonctionnait po. C'est po très didactique tout ça, Mono! (ça te dérange pas si je 'appelle Mono, lol?)

Guardian =>

cette syntaxe donnée par monoceros s'appelle un opérateur ternaire.
Cela en revient exactement à ça (mais c'est plus court lol):

if (!isset ($_GET['nb'])) {
$nb = 1;
}
else {
$nb = $_GET['nb'];
}

tes erreurs :
- tu vérifies si $nb existe...alors que, vu que tu passes une variable nb par l'url, tu dois vérifier l'existence de cette variable passée dans ton url, grâce -comme tu l'avais compris - au tableau $_GET
donc c'est if (!isset ($_GET['nb'])) et non pas if (!isset ($nb))

- tu ne respectes pas ta condition... ;-) Etant donné que tu ne mets pas de else, ce qui se passe avec ton code c'est que : si $nb n'existe pas, tu lui assignes 1. Puis, quoi qu'il se passe, tu lui assignes la valeur de $_GET['nb']. Bref tu fais les deux, ce qui ne sert évidemment à rien.

Ton but :
- vérifier que tu as bien passé nb en paramètre dans ton url.
- si ce n'est pas le cas, tu assignes 1 à une variable $nb, et tu poursuis ton code.
- si c'est le cas, tu assignes ce $_GET['nb'] existant à une variable $nb, et tu poursuis ton code.
0
monoceros01 Messages postés 420 Date d'inscription vendredi 28 novembre 2003 Statut Membre Dernière intervention 20 mars 2006
24 oct. 2005 à 14:00
Rhooo mais je fais confiance à la curiosité du débutant qui aura le vif réflexe d'aller voir dans la documentation pour comprendre bien évidemment :p
0
malalam Messages postés 10839 Date d'inscription lundi 24 février 2003 Statut Membre Dernière intervention 2 mars 2010 25
24 oct. 2005 à 15:08
Ouais mais toi t'as bon fond...po mouah ;-)
0
Rejoignez-nous