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 checkdate et nombre négatifs ? [RegEx]


Sujet :

Langage PHP

  1. #1
    Membre éclairé Avatar de laloune
    Homme Profil pro
    Consultant en Business Intelligence
    Inscrit en
    Mai 2005
    Messages
    484
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 41
    Localisation : Allemagne

    Informations professionnelles :
    Activité : Consultant en Business Intelligence

    Informations forums :
    Inscription : Mai 2005
    Messages : 484
    Points : 873
    Points
    873
    Par défaut fonction checkdate et nombre négatifs ?
    bonjour à tous,

    je dois vérifier une date saisie qui est au format dd/mm/yyyy. je vérifie d'abord le format avec une expression reg, puis la cohérence avec checkdate.

    le format est ok, mais la cohérence ne va pas vu que si je saisis "-12/12/2010" checkdate me renvoie ok !

    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
    <?php
    			$dateentry="-12/12/2010";
    				if (ereg('([0-9]{2})/([0-9]{2})/([0-9]{4})',$dateentry,$regs))
    				{
    					if (checkdate($regs[2],$regs[1],$regs[3]))
    					{
    						echo "date ok";											
    					}
    					else
    					{
    						echo "date incorrecte";
    					}
    				}
    				else
    				{
    					echo "format de la date mauvais";
    				}
    ?>
    auriez-vous une idée s'il vous plait ?

    d'avance merci !
    laloune
    Consultant B.I.
    Spécialité(s): Excel, SQL, Business Intelligence (Jedox Palo, Talend)

    "A problem worthy of attack proves its worth by fighting back." Piet Hein

  2. #2
    Rédacteur
    Avatar de Halleck
    Homme Profil pro
    Consultant PHP
    Inscrit en
    Mars 2003
    Messages
    597
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 37
    Localisation : France, Loiret (Centre)

    Informations professionnelles :
    Activité : Consultant PHP

    Informations forums :
    Inscription : Mars 2003
    Messages : 597
    Points : 878
    Points
    878
    Par défaut
    Ton nombre négatif n'est jamais passé à checkdate(), vu que ton expression régulière ne capture que les entiers.

    Au pire, si tu ne veux pas changer ton code tu peux faire :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    ^([0-9]{2})/([0-9]{2})/([0-9]{4})$ // commence par, finit par
    Mais au passage, ereg est déprécié, utilise plutôt preg_*
    Zend PHP Certified Engineer, Certifié Symfony2
    blog : blog.lepine.pro
    Secrétaire de l'AFUP (Association des Utilisateurs de PHP)

  3. #3
    Membre éclairé Avatar de laloune
    Homme Profil pro
    Consultant en Business Intelligence
    Inscrit en
    Mai 2005
    Messages
    484
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 41
    Localisation : Allemagne

    Informations professionnelles :
    Activité : Consultant en Business Intelligence

    Informations forums :
    Inscription : Mai 2005
    Messages : 484
    Points : 873
    Points
    873
    Par défaut
    ma foi oui ca fait du sens !

    et merci pour le ereg (vraiment rouillé mon php :-))

    merci beaucoup pour votre aide.
    laloune
    Consultant B.I.
    Spécialité(s): Excel, SQL, Business Intelligence (Jedox Palo, Talend)

    "A problem worthy of attack proves its worth by fighting back." Piet Hein

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

Discussions similaires

  1. Réponses: 3
    Dernier message: 05/09/2006, 00h47
  2. [Optimisation][Fonction]calcul du nombre de jours ...
    Par m-mas dans le forum MS SQL Server
    Réponses: 6
    Dernier message: 26/10/2005, 14h39
  3. Réponses: 6
    Dernier message: 10/08/2005, 11h36
  4. [D7 Ent. / XP] Trunc() sur un nombre négatif
    Par Magnus dans le forum Langage
    Réponses: 14
    Dernier message: 17/06/2005, 16h45
  5. [68000] EXT nombre négatif
    Par fastzombi dans le forum Autres architectures
    Réponses: 2
    Dernier message: 02/05/2004, 12h17

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