Comparer deux date

Résolu
rambad -  
 rambad -
Bonjour,
J’ai une date de fin de validités des utilisateur dans une base de donnée et je veut comparer cette date avec la date système et afficher les non des utilisateur ou il leur reste 3 mois de validité.
J’utilise php
Merci d’avance
Configuration: Windows XP
Firefox 2.0.0.11

8 réponses

  1. Reivax962 Messages postés 3742 Statut Membre 1 011
     
    Bonjour,

    Je te conseille d'utiliser directement la requête SQL pour faire cette comparaison.
    Par contre, la syntaxe est très changeante suivant le SGBD : tu utilises lequel ?

    Xavier
    0
  2. rambad
     
    merci de m'avoir repondu ,
    j'utilise mysql,
    0
  3. rambad
     
    la date dans la base de donnee est deja format date et j'ai deja utiliser cette fonction sa n'a pas marcher
    la requette que j'ai utiliser est la suivante:
    select * from user where ($date_valid_pass - $date) < 90
    $date est la date systeme
    $date_valid_pass est la date dans la base du donnee
    0
  4. Vous n’avez pas trouvé la réponse que vous recherchez ?

    Posez votre question
  5. Alain_42 Messages postés 5413 Statut Membre 904
     
    Bonjour,

    As tu fais un echo $date pour voir si elle a le même format que celle de la base ?

    en plus dans la condition WHERE il faut présiser sur quel champ de la table porte la condition

    select * from user where ton_ champ_ date_valid_pass  < ($date+90)
    


    @lain
    0
  6. Reivax962 Messages postés 3742 Statut Membre 1 011
     
    Je ferais plutôt directement ceci :

    SELECT * FROM user WHERE TO_DAYS(date_col) - TO_DAYS(NOW()) <= 90;

    Comme ça, pas besoin de t'embêter avec des dates php...
    0
  7. rambad
     
    j'ai ajouter un echo sur la requette elle a afficher le resulta suivante:

    select * from user where (2013-01-17 - 2008-02-08) < 90

    je l'ai coppier et coller dans phpMyAdmin la requette afficher est la suivante:

    SELECT *
    FROM user
    WHERE ( 2013 -01 -17 -2008 -02 -08 ) & lt;

    90

    et tous la table est afficher meme l'année 2013
    0
  8. rambad
     
    merci Reivax962 votre solution etait la bonne et merci a vous tous
    0