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 les champs d'un formulaire


Sujet :

Langage PHP

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Membre éclairé
    Inscrit en
    Janvier 2007
    Messages
    425
    Détails du profil
    Informations forums :
    Inscription : Janvier 2007
    Messages : 425
    Par défaut Vérifier les champs d'un formulaire
    Bonjour;

    Est ce qu'il y a quelqu'un qui a une idée comment faire une classe de vérification des champs d'un formulaire, dans mon exemple, j'ai déterminé deux fonctions pour voir si un champs est vide et s'il contient un min et max de caractères:

    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
    20
    21
    22
    23
    24
    25
    26
    27
    28
    29
    30
    31
    32
    33
    34
    35
    36
    37
    38
    39
    40
    41
    42
    43
    44
     
    <?php
     
    class verifFields{
     
    	public final function isEmpty($field, $emMsg) // nom du champs a controler et le message d'erreur
    		{
    			if(empty($field))
    			{
    				echo $emMsg;	
    			}
    			else
    			{
    				echo 'name est bien';
    			}
    		}
     
    	public final function tailleField($field, $mix=3, $max=10) 
    		{
    			$field = strlen($field;
    			// code
    			return $field;
    		}
     
     
     
     
     
     
    }
     
    $verif = new verifFields();
    $verif->isEmpty('name', 'mon Message');
     
    ?>
     
    <form action="<?php $_SERVER['php_self']; ?>" method="POST">
    <input type="text" name="name" />
    <input type="submit" />
    </form>
     
    <?php
    echo 'nom est:  '.$name.'<br>';
    ?>
    merci pour votre aide

  2. #2
    Membre éclairé
    Homme Profil pro
    Autre
    Inscrit en
    Juin 2011
    Messages
    49
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations professionnelles :
    Activité : Autre
    Secteur : Conseil

    Informations forums :
    Inscription : Juin 2011
    Messages : 49
    Par défaut
    Salut,

    Je ne sais pas si c'est ce que tu souhaites faire, mais en utilisant les Expressions Régulières (RegEx) tu peux vérifier que tes champs respectent bien un certain format (adresse mail, numéro de téléphone, etc ...). Quand aux dates, les fonctions natives de PHP te permettent déjà de la faire facilement.

  3. #3
    Membre Expert
    Avatar de transgohan
    Homme Profil pro
    Développeur Temps réel Embarqué
    Inscrit en
    Janvier 2011
    Messages
    3 149
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Maine et Loire (Pays de la Loire)

    Informations professionnelles :
    Activité : Développeur Temps réel Embarqué

    Informations forums :
    Inscription : Janvier 2011
    Messages : 3 149
    Par défaut
    Citation Envoyé par unnamed-anonymous Voir le message
    Salut,

    Je ne sais pas si c'est ce que tu souhaites faire, mais en utilisant les Expressions Régulières (RegEx) tu peux vérifier que tes champs respectent bien un certain format (adresse mail, numéro de téléphone, etc ...). Quand aux dates, les fonctions natives de PHP te permettent déjà de la faire facilement.
    La fonction filter_input() est là pour ça...
    Les Regex à toutes les sauces c'est le plus mauvais assaisonnement.

  4. #4
    Membre éclairé
    Homme Profil pro
    Autre
    Inscrit en
    Juin 2011
    Messages
    49
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations professionnelles :
    Activité : Autre
    Secteur : Conseil

    Informations forums :
    Inscription : Juin 2011
    Messages : 49
    Par défaut
    Citation Envoyé par transgohan Voir le message
    La fonction filter_input() est là pour ça...
    Les Regex à toutes les sauces c'est le plus mauvais assaisonnement.
    Je n'avais jamais utilisé cette fonction, c'est toujours bon à savoir ;-)
    Mais en l’occurrence comme je disais, tout dépend du type de vérifications à effectuer ... Je ne suis pas familier de cette fonction mais il semblerait qu'elle ne couvre pas toutes les fonctionnalités des RegEx ?

  5. #5
    Membre Expert
    Avatar de transgohan
    Homme Profil pro
    Développeur Temps réel Embarqué
    Inscrit en
    Janvier 2011
    Messages
    3 149
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Maine et Loire (Pays de la Loire)

    Informations professionnelles :
    Activité : Développeur Temps réel Embarqué

    Informations forums :
    Inscription : Janvier 2011
    Messages : 3 149
    Par défaut
    Citation Envoyé par unnamed-anonymous Voir le message
    Je n'avais jamais utilisé cette fonction, c'est toujours bon à savoir ;-)
    Mais en l’occurrence comme je disais, tout dépend du type de vérifications à effectuer ... Je ne suis pas familier de cette fonction mais il semblerait qu'elle ne couvre pas toutes les fonctionnalités des RegEx ?
    Elle couvre bien plus que ce que tu pourrais imaginer.
    Et couplée avec d'autres vérifications si besoin est cela reste 10 000 fois plus rapide et optimisé qu'une regex.

  6. #6
    Membre éclairé
    Homme Profil pro
    Autre
    Inscrit en
    Juin 2011
    Messages
    49
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations professionnelles :
    Activité : Autre
    Secteur : Conseil

    Informations forums :
    Inscription : Juin 2011
    Messages : 49
    Par défaut
    Ca fait bien longtemps que je ne me suis plus penché sur du PHP, mais la prochaine fois j'essaierai d'y penser ...

  7. #7
    Membre éclairé
    Inscrit en
    Janvier 2007
    Messages
    425
    Détails du profil
    Informations forums :
    Inscription : Janvier 2007
    Messages : 425
    Par défaut
    j'ai fait un test de ma fonction dans une class, le teste retourne toujours 'this is false' alors le var_dump retourn bool(true) si TRUE et bool(false) si FALSE:

    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
    20
    21
    22
    23
    24
    25
    26
    27
    28
    29
    30
    31
    32
    33
    34
    35
    36
     
    <?php
    class isFunction {
     
    function isTrue($string)
    {
        if($string == 'Test')
        {
            return TRUE;
        }
        else
        {
            return False;
        }
    }
     
    function checkData()
    {
        if($this->isTrue($string))
        {
            echo 'this is true';
        }
        else
        {
            echo 'this is false';
        }
    }
     
     
    }
     
    $row = new isFunction();
    var_dump($row->isTrue('Test'));
    $row->checkData();
     
    ?>
    c'est quoi le probleme dans ma class

    merci

  8. #8
    Rédacteur

    Avatar de Bovino
    Homme Profil pro
    Développeur Web
    Inscrit en
    Juin 2008
    Messages
    23 647
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 55
    Localisation : France, Gironde (Aquitaine)

    Informations professionnelles :
    Activité : Développeur Web
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Juin 2008
    Messages : 23 647
    Billets dans le blog
    20
    Par défaut
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    if($this->isTrue($string))
    Je pense que ta méthode cherche encore le chapeau d'où $string doit sortir
    Si tu utilises une variable dans une méthode, tu dois la définir au préalable (comme tu le fais d'ailleurs dans le test
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    var_dump($row->isTrue('Test'));
    Pas de question technique par MP !
    Tout le monde peut participer à developpez.com, vous avez une idée, contactez-moi !
    Mes formations video2brain : La formation complète sur JavaScriptJavaScript et le DOM par la pratiquePHP 5 et MySQL : les fondamentaux
    Mon livre sur jQuery
    Module Firefox / Chrome d'intégration de JSFiddle et CodePen sur le forum

  9. #9
    Membre éclairé
    Inscrit en
    Janvier 2007
    Messages
    425
    Détails du profil
    Informations forums :
    Inscription : Janvier 2007
    Messages : 425
    Par défaut
    pardon c'etait un exemple pour me situer, je les ai declare ici mais ca marche pas

Discussions similaires

  1. Vérifier les champs d'un formulaire
    Par linouchka dans le forum Général JavaScript
    Réponses: 9
    Dernier message: 27/05/2014, 21h18
  2. Vérifier les champs d'un formulaire
    Par paikan06 dans le forum Langage
    Réponses: 4
    Dernier message: 18/05/2012, 18h25
  3. Réponses: 4
    Dernier message: 14/11/2009, 17h27
  4. Vérifier les champs d'un formulaire
    Par Olivier Regnier dans le forum Web
    Réponses: 6
    Dernier message: 12/11/2007, 11h04
  5. [Formulaire] vérifier les champs d'un formulaire
    Par mariafan dans le forum Général JavaScript
    Réponses: 10
    Dernier message: 28/12/2006, 19h05

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