$query = $modx->newQuery('request'); $query->select(array( 'id', 'lastupdate' , 'DATEDIFF(NOW(),lastupdate) AS Age' )); $query->where(array( 'Age:>=' => 7 ));
$query->where(array( 'DATEDIFF(NOW(),lastupdate):>=' => 7 ));
This question has been answered by Bruno17. See the first response.
$cutoff = strtotime(-1 week); /* 7 days ago */ $query->where(array( (string) $cutoff . ':>=' => 'lastupdate' ));
How about something like this:
$cutoff = strtotime(-1 week); /* 7 days ago */ $query->where(array( (string) $cutoff . ':>=' => 'lastupdate' ));
Try removing this line:
'DATEDIFF(NOW(),lastupdate) AS Age'
$query = $modx->newQuery('request'); $query->select(array( 'id', 'lastupdate' )); $query->where(array( 'DATEDIFF(NOW(),lastupdate):>=' => 7 ));
$requests = $modx->getCollection('request',$query); foreach ($requests as $r) { $request=$r->toArray(); if ($request[Age]>7) ......
$query = $modx->newQuery('request'); $query->select(array( 'id', 'lastupdate' , 'DATEDIFF(NOW(),lastupdate) AS Age' )); $query->having('Age >= 7');
$query = $modx->newQuery('request'); $query->select(array( 'id', 'lastupdate' , 'DATEDIFF(NOW(),lastupdate) AS Age' )); $query->where('DATEDIFF(NOW(),lastupdate) >= 7');