2010-06-03 4 views
0

Existe-t-il un moyen de montrer uniquement les éléments qui sont plus anciens qu'une certaine date dans un tableau php mysql? J'utilise cette méthode de recherche et de tri par lastpost_cl:Afficher uniquement certains éléments dans une base de données MySQL en utilisant php et time()

$query="SELECT * FROM properties ORDER BY lastpost_cl"; 
$result=mysql_query($query); 
$num = mysql_num_rows ($result); 
mysql_close(); 

et je pensais la façon de vérifier le temps serait:

if (time() <= strtotime($lastpost_cl)) { 

} 

Comment puis-je combiner les deux et ne montrent lastpost_cl que sont plus âgés que l'heure actuelle?

Répondre

1
$query="SELECT * FROM properties WHERE lastpost_cl < NOW() ". 
    "ORDER BY lastpost_cl"; 

Ceci suppose que vous stockez la date en utilisant l'un des types de date mysql. Voir le manuel here.

+0

Worked great. Merci! – Jon

0

MySQL peut le faire seul. Il suffit de changer votre requête à ceci:

$query="SELECT * FROM properties WHERE lastpost_cl < NOW() ORDER BY lastpost_cl"; 
0

Vous devriez le faire dans la requête SQL bien, parce que le temps sur le serveur SQL et le serveur Web pourrait être différent. Une requête comme celle-ci obtiendrait tout plus d'une semaine

SELECT 
* 
FROM properties 
where lastpost_cl < now() - INTERVAL 7 DAY 
ORDER BY lastpost_cl 
Questions connexes