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

8 réponses

Reivax962 Messages postés 3672 Date d'inscription   Statut Membre Dernière intervention   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
rambad
 
merci de m'avoir repondu ,
j'utilise mysql,
0
Zabuza66 Messages postés 368 Date d'inscription   Statut Membre Dernière intervention   66
 
0
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

Vous n’avez pas trouvé la réponse que vous recherchez ?

Posez votre question
Alain_42 Messages postés 5361 Date d'inscription   Statut Membre Dernière intervention   894
 
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
Reivax962 Messages postés 3672 Date d'inscription   Statut Membre Dernière intervention   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
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
rambad
 
merci Reivax962 votre solution etait la bonne et merci a vous tous
0