Utilisation de is_int ou is_intenger

Répondre
celia
celia
Déconnecté
Pour la réalisation des tests sur mon formulaire avec php, j'ai essayé is_int() ou is_integer() mais ça ne marche pas.
exemple:
if (!isset ($this->Getion) || trim($this->Getion) == "" || !is_integer($this->Getion)){
echo"message erreur!"; }

Au fait, avec ce script même qd je rentre un entier dans le formulaire , il me le prend pas et m'affiche le message d'erreur.

par contre , il me semble qu'il faut utiliser is_numeric mais ce dernier prend même des reels et flottants.

quelqu'un a une idée?
Merci d'avance
LA GLOBULE
LA GLOBULE
Déconnecté
111 111 111 x 111 111 111 = 12 345 678 987 654 321
Tu ne testerais pas ces fonctions sur du GET ou du POST ? Si oui, c'est normal que cela ne fonctionne pas, tout ce qui provient du GET ou du POSt est considéré comme étant un type string par PHP.
Cart
Cart
Déconnecté
tu peux faire un truc du genre

is_numeric() && !is_float()

ca test si c un numeric et si ce nest pas un nombre a virgule =]
LupusMic
LupusMic
Déconnecté
Développeur récurrent, procédural et relationnel. Caustique soupe-au-lait.
(Cart) Non.

Je vais préciser ce qu'à dit La Globule. Une variable en PHP est typée.

  1. $var = 3 ;
  2. echo '$var ' (is_int($var) ? 'est' : 'n\'est pas') un nombre ;
  3. echo '$var ' (is_int($var) ? 'est' : 'n\'est pas') un nombre ;
  4.  
  5. $var = '3'
  6. echo '$var ' (is_int($var) ? 'est' : 'n\'est pas') un nombre ; 


Dans mon exemple, $var est tantôt un entier, tantôt une chaine... représentant un entier. C'est ce qu'il faut comprendre ici : faire la distinction entre un nombre et une chaine représentant un nombre.

Or, comme le disait La Globule, le tableau $_POST ne contient que des chaines (comment saurait-il qu'il lui faut préparer un entier plutôt qu'une chaîne ?).

Donc il faut utiliser une fonction qui détermine si le contenu de la chaine est un nombre.

Il y a alors plusieurs tests possibles :
  1. $var == (integer) $var 

  1. ereg('^\d+$', $var) > 0 

  1. preg_match('^\d+$', $var) > 0 
Répondre
Accès rapide :

Remonter Remonter
L'éditeur javascript - CSS - Gentoo - Tutoriaux PHP - Tutoriels PHP - Breizh Blog