Opgelost met dank aan John D

oplossing
<?php
WHERE date > DATE_SUB(curdate(), INTERVAL 31 DAY)
?>

-------------------

hallo ,
Ik zit nu met een probleem, en kom er niet verder mee. Als iemand me zou kunnen helpen stel ik dat zeer op prijs.

Ik heb nu dus een databasetabel

items
--------
id
name
text
date (CURRENT_TIMESTAMP) (bijv: 2010-12-13 21:59:59)

en ik wil hier mijn opgehaalde rows beperken tot 31 dagen in het verleden.

Ik weet dat je dit kan doen met normale int getallen door de volgende regel toe te passen, maar dit werkt niet met datums.

<?php
ABS( price - $x ) as distance
?>

Als iemand een manier weet om datums te beperken tot 31 dagen in het verleden of iets dergelijks weet wat daarop lijkt hoor ik het graag.

alvast bedankt.

[size=xsmall]Toevoeging op 07/12/2010 02:20:14:[/size]

ok ik heb nu volgende gevonden DATDIFF het werkt prima, alleen ik moet het nog kunnen beperken voor bepaalde datums.

<?php
$_abstract = " DATEDIFF(ad.date,'".$timestamp."') as distance";
$_where = " distance <= 31";
?>
kan iemand mij de juiste gebruik hiervan laten zien??

alvast bedankt
Los het niet op met php maar met SQL, in je query dus, grofweg:
WHERE date > DATE_SUB(curdate(), INTERVAL 31 DAY);
[edit]
Ik hoop toch wel dat je in je tabel het veld niet date hebt genoemd??
Is dat misschien een reserverd word.
John D op 07/12/2010 09:09:51

Los het niet op met php maar met SQL, in je query dus, grofweg:
WHERE date > DATE_SUB(curdate(), INTERVAL 31 DAY);

Ik hoop toch wel dat je in je tabel het veld niet date hebt genoemd??
Is dat misschien een reserverd word.


@John
Ontzettend bedankt voor je hulp, ik hoefde maar te knippen en te plakken en het werkt!

Ik lees in de link van Kris Peeters dat mysql date als "unquoted identifier" geen problemen mee geeft.

Reageren