IdentifiantMot de passe
Loading...
Mot de passe oublié ?Je m'inscris ! (gratuit)
Navigation

Inscrivez-vous gratuitement
pour pouvoir participer, suivre les réponses en temps réel, voter pour les messages, poser vos propres questions et recevoir la newsletter

Langage PHP Discussion :

Vérifier le type d'un champs de formulaire


Sujet :

Langage PHP

  1. #1
    Membre averti Avatar de guy2004
    Profil pro
    Inscrit en
    Juillet 2004
    Messages
    805
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Juillet 2004
    Messages : 805
    Points : 377
    Points
    377
    Par défaut Vérifier le type d'un champs de formulaire
    Bonjour,
    Je souhaite vérifier que un numéro que mon champs "tel" est bien rempli avec des numeros et indiquer si ce n'est pas le cas.
    Pourtant, le type de la variable est toujours de type "string", comment faire cette vérification ?
    Merci beaucoup

  2. #2
    Expert éminent
    Avatar de Séb.
    Profil pro
    Inscrit en
    Mars 2005
    Messages
    5 193
    Détails du profil
    Informations personnelles :
    Âge : 46
    Localisation : France

    Informations professionnelles :
    Secteur : High Tech - Opérateur de télécommunications

    Informations forums :
    Inscription : Mars 2005
    Messages : 5 193
    Points : 8 403
    Points
    8 403
    Billets dans le blog
    17
    Par défaut Re: [gettype()] Vérifier le type d'un champs de formulaire
    Citation Envoyé par guy2004
    Bonjour,
    Je souhaite vérifier que un numéro que mon champs "tel" est bien rempli avec des numeros et indiquer si ce n'est pas le cas.
    Pourtant, le type de la variable est toujours de type "string", comment faire cette vérification ?
    Merci beaucoup
    Oui, tous les éléments de $_POST / $_GET sont des chaînes, c'est normal.
    Pour vérifier qu'un champ ne contient que des numériques tu as juste à parcourir la chaîne et à tester si le caractère courant est bien un chiffre.
    Un problème exposé clairement est déjà à moitié résolu
    Keep It Smart and Simple

  3. #3
    Membre averti Avatar de guy2004
    Profil pro
    Inscrit en
    Juillet 2004
    Messages
    805
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Juillet 2004
    Messages : 805
    Points : 377
    Points
    377
    Par défaut
    apparemment la fonction is_numeric() semble etre plus facile.

  4. #4
    Membre habitué
    Profil pro
    Inscrit en
    Février 2006
    Messages
    109
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Février 2006
    Messages : 109
    Points : 131
    Points
    131
    Par défaut
    Moi j'utilise ca ...
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
    18
    19
     
    ////
    // indique si une variable est du type numeric
    // Chaque caractere doit etre compris entre 48 (=0) et 57 (=9) 
    // INPUT
    //   $Var Chaine de caracteres à tester 
    ////
    function is_num($var) {
    	if (strlen($var) == 0 ) return False;
    	for ($i=0;$i<strlen($var);$i++) {
    	   $ascii_code=ord($var[$i]);
    	   if (intval($ascii_code) >=48 && intval($ascii_code) <=57) {
    	       continue;
    	   } else {          
    	       return FALSE;
    	   }
    	} 
    	return TRUE;
    }

  5. #5
    Expert éminent
    Avatar de Séb.
    Profil pro
    Inscrit en
    Mars 2005
    Messages
    5 193
    Détails du profil
    Informations personnelles :
    Âge : 46
    Localisation : France

    Informations professionnelles :
    Secteur : High Tech - Opérateur de télécommunications

    Informations forums :
    Inscription : Mars 2005
    Messages : 5 193
    Points : 8 403
    Points
    8 403
    Billets dans le blog
    17
    Par défaut
    Citation Envoyé par guy2004
    apparemment la fonction is_numeric() semble etre plus facile.
    Non car is_numeric( ) accepte les notations scientifiques, décimales, signées.
    Un problème exposé clairement est déjà à moitié résolu
    Keep It Smart and Simple

  6. #6
    Membre averti Avatar de guy2004
    Profil pro
    Inscrit en
    Juillet 2004
    Messages
    805
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Juillet 2004
    Messages : 805
    Points : 377
    Points
    377
    Par défaut
    alors y a quoi pour un nombre entier ?

  7. #7
    Membre habitué
    Profil pro
    Inscrit en
    Février 2006
    Messages
    109
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Février 2006
    Messages : 109
    Points : 131
    Points
    131
    Par défaut
    guy : la fonction is_numeric ne donne tout le temps ce que l'on veut :

    """""""
    Description
    bool is_numeric ( mixed var )

    Détermine si la variable donnée est de type numérique. Les chaînes numériques sont composées optionnellement de signes, de n'importe quel nombre de chiffres, optionnellement d'une partie décimale ainsi qu'une partie exponentielle. +0123.45e6 est une valeur numérique valide. La notation hexadécimale (0xFF) est autorisée également, mais uniquement sans un signe, sans décimale et sans partie exponentielle
    """"""""
    Pour du tel .. le + ou le - c'est pas top

  8. #8
    Membre habitué
    Profil pro
    Inscrit en
    Février 2006
    Messages
    109
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Février 2006
    Messages : 109
    Points : 131
    Points
    131
    Par défaut
    Oups...

    "... ne donne PAS tout le temps ce que l'on veut :"


Discussions similaires

  1. [RegEx] Vérifier un champ de formulaire
    Par wace dans le forum Langage
    Réponses: 1
    Dernier message: 03/09/2007, 16h11
  2. Vérifier que tous les champs du formulaire soient bien remplis
    Par arnaudperfect dans le forum Langage
    Réponses: 3
    Dernier message: 25/08/2007, 11h59
  3. Vérifier champ de formulaire et caractères interdits
    Par rekiem71 dans le forum Général JavaScript
    Réponses: 4
    Dernier message: 16/04/2007, 17h45
  4. vérifier le type d'un champ ??
    Par tigzirt dans le forum Général JavaScript
    Réponses: 2
    Dernier message: 21/06/2006, 11h59
  5. [CSS][formulaire] connaitre le type d'un champ input
    Par psychomatt dans le forum Mise en page CSS
    Réponses: 3
    Dernier message: 22/09/2005, 12h13

Partager

Partager
  • Envoyer la discussion sur Viadeo
  • Envoyer la discussion sur Twitter
  • Envoyer la discussion sur Google
  • Envoyer la discussion sur Facebook
  • Envoyer la discussion sur Digg
  • Envoyer la discussion sur Delicious
  • Envoyer la discussion sur MySpace
  • Envoyer la discussion sur Yahoo