tester une variable recuperer avec un get

Eléphanteau du PHP | 14 Messages

01 oct. 2005, 09:49

bonjour, voilà mon problème: je souhaiterais tester une variable passer avec un get une partie de mon code est le suivant :

Code : Tout sélectionner

$id = isset($_GET['id']) ? $_GET['id'] : 0;
je voudrait teste un truc du genre if ( id between 0 and 99 ) ....
mais je sais pas trop comment et ou rajouter ce code. :? [/php][/quote]

Avatar du membre
Administrateur PHPfrance
Administrateur PHPfrance | 13231 Messages

01 oct. 2005, 10:05

Si j'ai bien compris, tu voudrais récupérer $_GET["id"] uniquement si la variable existe et si elle est comprise entre 0 et 99. C'est ça ?

essaye ça
$id = (isset($_GET['id']) && $_GET["id"] >= 0 && $_GET["id"] <= 99) ? $_GET['id'] : 0;
Dans l'ordre, PHP va tester l'existence de $_GET["id"]. Si elle existe, elle va tester si elle est >= 0. Si c'est le cas, elle va tester si elle est <= 99.

Dans tout les autres cas, elle va prendre 0

Si $_GET["id"] n'existe pas, PHP ne va pas tester les autres conditions et donc, pas d'erreur
Connaître son ignorance est la meilleure part de la connaissance
Pour un code lisible : n'hésitez pas à sauter des lignes et indenter

twitter - site perso - Github - Zend Certified Engineer

Eléphanteau du PHP | 14 Messages

01 oct. 2005, 11:46

super je viens de tester ça marche, juste une derniere chose que j'avais pas pensé, comment maintenant on peut rajouter un message quant le test est en default, du genre "pas d'article disponible".
merci pour l'aide; :shock:

Avatar du membre
Administrateur PHPfrance
Administrateur PHPfrance | 13231 Messages

01 oct. 2005, 12:05

Il faut que tu change de forme. La forme abregée ne sera plus la plus simple
if (isset($_GET['id']) && $_GET["id"] >= 0 && $_GET["id"] <= 99) {
  $id = $_GET['id'];
} else {
  $id = 0;
  $message = "message d'erreur";
}
Et plus loin dans ton code, si $message existe, tu l'affiche
Connaître son ignorance est la meilleure part de la connaissance
Pour un code lisible : n'hésitez pas à sauter des lignes et indenter

twitter - site perso - Github - Zend Certified Engineer

Eléphanteau du PHP | 14 Messages

01 oct. 2005, 12:29

ok merci ça marche, je me rend compte q'il me reste encore beacoup de choses à apprendre !!!!!
:lol: :lol: :wink:

Avatar du membre
Administrateur PHPfrance
Administrateur PHPfrance | 13231 Messages

01 oct. 2005, 13:28

Tu sais, les langages Web tels que le PHP étant assez jeunes, ils sont en constante évolutions et tout le monde à toujous quelquechose de nouveau à apprendre ;)

Je pensais commencer à maitriser le PHP 4 qu'il m'a fallut me mettre au PHP 5 ...
Connaître son ignorance est la meilleure part de la connaissance
Pour un code lisible : n'hésitez pas à sauter des lignes et indenter

twitter - site perso - Github - Zend Certified Engineer