tester variable ; texte ou nombre ??

Mammouth du PHP | 959 Messages

15 juin 2007, 19:43

bonjour,

pour faire simple, voici un exemple litéraire...

SI GET=id est DIFFERENT d'une valeur numérique, j'affiche : "barre toi !"

SI GET=id est EGAL d'une valeur numérique, j'affiche : "bienvenue ! je t'aime !"

:lol:

je vousdrait le même script mais c'est "d'une valeur numérique" que je bloque...

merci de votre aide !

Eléphant du PHP | 332 Messages

15 juin 2007, 20:36

c'est is_numeric() que tu cherches ?

Eléphant du PHP | 199 Messages

15 juin 2007, 21:01

Oui, is_numeric() si tu veux vérifier un nombre, is_int() pour vérifier un entier, is_float() pour vérifier un décimal.
Klomac - Blog Lambda

Mammouth du PHP | 959 Messages

15 juin 2007, 21:14

donc, c'est sa ??
if(is_int($_GET['id']))
{
echo '<meta http-equiv="refresh" content="0;URL=accueil.php" />';
exit();
}

Eléphant du PHP | 259 Messages

15 juin 2007, 22:15

hello,

a priori is_int() te répondra toujours faux... tout parametre passé en GET ou POST est recu comme chaine de caracteres (type String).

à la limite si tu attends un entier, tu peux utiliser ctype_digit(), qui retournera true s'il n'y a QUE des chiffres.

Mammouth du PHP | 959 Messages

15 juin 2007, 23:10

a ! ok ! donc en fait, c'est sa?
$id = $_GET['id'];
$test = is_int($id);

if($test == FALSE) //si c'est pas un nombre, le visiteur est rédirigé...
{
echo '<meta http-equiv="refresh" content="0;URL=accueil.php" />';
exit(); //fin de l'exécution de la page...
}

ViPHP
ViPHP | 5924 Messages

16 juin 2007, 00:39

Il faut que tu utilises la fonction is_numeric(), la fonction is_int() te posera des problèmes.

Mammouth du PHP | 959 Messages

16 juin 2007, 17:09

a ok, donc sa :
$id = $_GET['id'];
$test = is_numeric($id);

if($test == FALSE) //si c'est pas un nombre, le visiteur est rédirigé...
{
echo '<meta http-equiv="refresh" content="0;URL=accueil.php" />';
exit(); //fin de l'exécution de la page...
}

ViPHP
ViPHP | 3607 Messages

16 juin 2007, 17:12

ben c'est à toi de nous dire si ça fonctionne :roll:
On va pas faire les tests pour toi... :-*

Mammouth du PHP | 959 Messages

16 juin 2007, 19:35

ouai sa marche ! merci ! :D :D