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] Comparaison de date


Sujet :

Langage PHP

  1. #1
    Membre à l'essai
    Profil pro
    Inscrit en
    Avril 2008
    Messages
    21
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Avril 2008
    Messages : 21
    Points : 23
    Points
    23
    Par défaut [Dates] Comparaison de date
    Bonjour à tous,

    Pour le site internet que je suis en train de faire, j'ai besoin de comparer la date d'aujourd'hui avec une date de validité. Si la date de validité est supérieure à la date d'aujourd'hui c'est ok mais si elle est inférieure c'est pas bon.
    Voici le code que j'ai fais :
    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
     
    <?php
    $actif = "24/09/08"; // Date limite de validité
     
    // date d'aujourd'hui
    $jour_date = date(d);
    $mois_date = date(m);
    $annee_date = date(y);
     
    $jour_actif = substr($actif, 0, 2); // Jour limite
    $mois_actif = substr($actif, 3, 2); // Mois limite
    $annee_actif = substr($actif, 6, 2); // Année limite
     
    // Valide si :
     
    // L'année est supérieure
    if (($annee_actif > $annee_date)
    // L'année est la même et que le mois est supérieur
    or (($annee_actif == $annee_date) and (mois_actif > mois_date))
    // L'année et le mois sont les mêmes et le jour est égal ou supérieur
    or (($annee_actif == $annee_date) and (mois_actif == mois_date) and (jour_actif >= jour_date)))
    echo "c'est bon!";
    else echo "Date limite dépassé!";
    ?>
    Si je met une année supérieure dans la valeur $actif ça marche très bien mais pour le reste ca me marque toujours que la date est dépassé!
    Y aurait-il quelque chose que j'aurai mal fait?

    merci d'avance!

  2. #2
    Membre à l'essai
    Profil pro
    Inscrit en
    Avril 2008
    Messages
    21
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Avril 2008
    Messages : 21
    Points : 23
    Points
    23
    Par défaut
    J'ai trouvé la solution. J'ai changé de méthode en mettant la date au format "ymd" pour comparer c'est bien plus simple.

    Voici le code si ça peut aider :
    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
    <?php
    $actif = "10/10/08"; // Date limite de validité
     
    $jour_actif = substr($actif, 0, 2); // Jour limite
    $mois_actif = substr($actif, 3, 2); // Mois limite
    $annee_actif = substr($actif, 6, 2); // Année limite
     
    // Nouveau format de la date de validité
    $nouveau_actif = $annee_actif.$mois_actif.$jour_actif ;
     
    // Valide si la date de validité est supérieur à la date d'aujourd'hui
    if ($nouveau_actif > date(ymd))
    echo "c'est bon!";
    else echo "Date de validité dépassée!";
    ?>

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

Discussions similaires

  1. [Date] comparaison entre dates
    Par *alexandre* dans le forum Collection et Stream
    Réponses: 6
    Dernier message: 03/11/2006, 11h17
  2. [Dates] comparaison de date
    Par klimero dans le forum Langage
    Réponses: 4
    Dernier message: 01/02/2006, 15h39
  3. [Dates] Comparaison des dates
    Par sempire dans le forum Général JavaScript
    Réponses: 5
    Dernier message: 01/01/2006, 18h02
  4. [Dates] Comparaison de date entre deux IP (anti-flood)
    Par psychoBob dans le forum Langage
    Réponses: 79
    Dernier message: 23/12/2005, 17h19
  5. [Dates] Comparaison de dates > 2037
    Par hisy dans le forum Langage
    Réponses: 1
    Dernier message: 09/12/2005, 11h08

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