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 :

fonction de vérification d'une date [RegEx]


Sujet :

Langage PHP

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Membre confirmé Avatar de yosraisi
    Inscrit en
    Février 2008
    Messages
    136
    Détails du profil
    Informations forums :
    Inscription : Février 2008
    Messages : 136
    Par défaut fonction de vérification d'une date
    bonjour,

    je viens de vérifier les champs date de mon application j'ai décider d'utiliser cette fonction
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    		function testDate( $value )
    					{
    						return preg_match( '`^\d{1,2}/\d{1,2}/\d{4}$`' , $value ) )
    					}
    elle vérifie le format jj/mm/aaaa
    mais moi je veux cette format jj-mm-aaaa . alors j'ai changé la fonction
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    		function testDate( $value )
    					{
    						return preg_match( '`^\d{1,2}-\d{1,2}-\d{4}$`' , $value ) ;
    					}
    est ce correcte cette transformation car si je teste sur une date elle retourne 0. commet je peux transformer cette fonction pour avoir un résultat correcte
    merci pour l'aide

  2. #2
    Rédacteur/Modérateur

    Avatar de Antoun
    Homme Profil pro
    Architecte décisionnel
    Inscrit en
    Octobre 2006
    Messages
    6 288
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 55
    Localisation : France, Paris (Île de France)

    Informations professionnelles :
    Activité : Architecte décisionnel
    Secteur : Conseil

    Informations forums :
    Inscription : Octobre 2006
    Messages : 6 288
    Par défaut
    A vue de nez, c'est correct. Peux-tu poster ton test ?

  3. #3
    Membre confirmé Avatar de yosraisi
    Inscrit en
    Février 2008
    Messages
    136
    Détails du profil
    Informations forums :
    Inscription : Février 2008
    Messages : 136
    Par défaut
    bonjour,

    j'ai touver une autre solution mais c'estun peux long et pour ce code ça ne marche pas cette transformation
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    function f_isValidDDMMYYYY($p_text)
    					 {
    					 $l_ok=true;
    					 if (!preg_match('/\s*(\d+)[\s-]+(\d+)[\s-]+(\d+)\s*$/',$p_text,$l_val))
    					 {
    					 $l_ok=false;
    					 }
    					 else if (!checkdate($l_val[2],$l_val[1],$l_val[3]))
    					 {
    					 $l_ok=false;
    					 }
     
    					 return($l_ok);
    					 }

  4. #4
    Rédacteur/Modérateur

    Avatar de Antoun
    Homme Profil pro
    Architecte décisionnel
    Inscrit en
    Octobre 2006
    Messages
    6 288
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 55
    Localisation : France, Paris (Île de France)

    Informations professionnelles :
    Activité : Architecte décisionnel
    Secteur : Conseil

    Informations forums :
    Inscription : Octobre 2006
    Messages : 6 288
    Par défaut
    Pour moi (je viens de tester), ta première fonction marche. Par contre, elle n'élimine pas les dates idiotes commes 22/22/2008.

    Ta seconde fonction corrige ce gag. Quant à ta phrase "pour ce code ça ne marche pas cette transformation", je ne comprends absolument pas ce que ça veut dire.

  5. #5
    Membre confirmé Avatar de yosraisi
    Inscrit en
    Février 2008
    Messages
    136
    Détails du profil
    Informations forums :
    Inscription : Février 2008
    Messages : 136
    Par défaut
    bonjour c'est bien que la dernière fonction corrige le problème
    pour ce que tu n'as pas compris j'ai voulu dire que la transformation
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
     
    function testDate( $value )
    					{
    						return preg_match( '`^\d{1,2}-\d{1,2}-\d{4}$`' , $value ) ;
    					}
    ça n'a pas marché de fait d remplacer "/"par "-" c'est tout

    merci pour l'aide

  6. #6
    Rédacteur/Modérateur

    Avatar de Antoun
    Homme Profil pro
    Architecte décisionnel
    Inscrit en
    Octobre 2006
    Messages
    6 288
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 55
    Localisation : France, Paris (Île de France)

    Informations professionnelles :
    Activité : Architecte décisionnel
    Secteur : Conseil

    Informations forums :
    Inscription : Octobre 2006
    Messages : 6 288
    Par défaut
    euh... tu fais un preg_match, pas un preg_replace

+ Répondre à la discussion
Cette discussion est résolue.

Discussions similaires

  1. [Lazarus] Vérification d'une date
    Par Ministar dans le forum Lazarus
    Réponses: 2
    Dernier message: 22/01/2007, 13h44
  2. [Requête] fonction vrai/faux selon une date
    Par syldudu dans le forum Requêtes et SQL.
    Réponses: 2
    Dernier message: 18/12/2006, 10h12
  3. [Javascript] Vérification d'une date
    Par slyv dans le forum Général JavaScript
    Réponses: 3
    Dernier message: 08/11/2005, 08h36
  4. Vérification d'une date
    Par MonsieurPaul dans le forum VB 6 et antérieur
    Réponses: 14
    Dernier message: 12/08/2005, 16h39
  5. fonction javascript qui rassemble une date
    Par Dizystorm dans le forum Général JavaScript
    Réponses: 3
    Dernier message: 16/12/2004, 10h03

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