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 :

[Dates] fonction if / entrer correctement la date


Sujet :

Langage PHP

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Membre confirmé Avatar de camzo
    Homme Profil pro
    ingénieur en documentation
    Inscrit en
    Décembre 2006
    Messages
    168
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Paris (Île de France)

    Informations professionnelles :
    Activité : ingénieur en documentation
    Secteur : Industrie

    Informations forums :
    Inscription : Décembre 2006
    Messages : 168
    Par défaut [Dates] fonction if / entrer correctement la date
    bonjour à tous,

    j'essaie d'obliger l'utilisateur à saisir correctement la date de la prise de ces photos et de sa date de naissance sous la forme AAAA-MM-JJ. J'en suis là mais ça plante :

    elseif(preg_match ('/[0-9][0-9][0-9][0-9]-[0-9][0-9]-[0-9][0-9]/', $date) == 1)
    {
    echo "
    La date doit être enregistrée sous la forme : AAAA-MM-JJ
    ";
    exit();
    }
    j'ai pourtant pris note des tutos mais on peut toujours valider l'enregistrement avec une mauvaise saisie...

    Quelqu'un aurait-il une suggestion ?

    Merci d'avance

  2. #2
    Membre Expert
    Avatar de Nesmontou
    Homme Profil pro
    Architecte logiciel
    Inscrit en
    Septembre 2004
    Messages
    1 612
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 43
    Localisation : France, Nord (Nord Pas de Calais)

    Informations professionnelles :
    Activité : Architecte logiciel
    Secteur : Finance

    Informations forums :
    Inscription : Septembre 2004
    Messages : 1 612
    Par défaut
    Salut en fait, ta condition ne devrait pas être
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    elseif(preg_match ('/[0-9][0-9][0-9][0-9]-[0-9][0-9]-[0-9][0-9]/', $date) == 0)
    ?
    Tu dois vérifier que la date n'est pas formatée comme tu le souhaites.

    Sinon, petite remarque concernant ton expression régulière, tu pourrais utiliser celle-ci
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    $pattern = '`^[[:digit:]]{4}-[[:digit:]]{2}-[[:digit:]]{2}$`';
    La différence importante (hormis l'utilisation des [[:digit:]]) est l'utilisation de ^ et de $ pour indiquer que ta chaîne entière doit être de cette forme ; en effet, si tu appliques ta regex à la chaîne a2006-12-31, elle sera considérée comme valide.

    Tu peux jeter un oeil ici pour plus de détails sur les syntaxes des masques : http://fr.php.net/manual/fr/referenc...ern.syntax.php

    Bon développement et bonne année

  3. #3
    Membre confirmé Avatar de camzo
    Homme Profil pro
    ingénieur en documentation
    Inscrit en
    Décembre 2006
    Messages
    168
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Paris (Île de France)

    Informations professionnelles :
    Activité : ingénieur en documentation
    Secteur : Industrie

    Informations forums :
    Inscription : Décembre 2006
    Messages : 168
    Par défaut
    merci, c'est parfait !!!

    je n'arrivais plus à trouver l'erreur... qui est toujours là où on ne l'attend pas.

    merci pour le lien, j'avoue que j'aurais du mal à le trouver.

    bonne année à toi aussi

    tchô

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

Discussions similaires

  1. Parser une date suivi d'un fuseaux horaire (date+02:00) et conversion en Date.
    Par SpeedOverflow dans le forum Collection et Stream
    Réponses: 1
    Dernier message: 30/06/2013, 13h37
  2. fonction javascript qui rassemble une date
    Par Dizystorm dans le forum Général JavaScript
    Réponses: 3
    Dernier message: 16/12/2004, 10h03
  3. Fonction utilisateur qui renvoie la date du jour
    Par falcon dans le forum MS SQL Server
    Réponses: 5
    Dernier message: 13/12/2004, 11h03
  4. Réponses: 7
    Dernier message: 07/12/2004, 10h18
  5. Réponses: 8
    Dernier message: 05/05/2004, 12h30

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