Page 1 sur 1

tester une variable recuperer avec un get

Posté : 01 oct. 2005, 09:49
par hervé
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]

Posté : 01 oct. 2005, 10:05
par zeus
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

Posté : 01 oct. 2005, 11:46
par hervé
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:

Posté : 01 oct. 2005, 12:05
par zeus
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

Posté : 01 oct. 2005, 12:29
par hervé
ok merci ça marche, je me rend compte q'il me reste encore beacoup de choses à apprendre !!!!!
:lol: :lol: :wink:

Posté : 01 oct. 2005, 13:28
par zeus
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 ...