Puedes usar esta función:
Código PHP:
<?php
function suma_fechas($fecha,$ndias){
if (preg_match("/[0-9]{1,2}\/[0-9]{1,2}\/([0-9][0-9]){1,2}/",$fecha)){
list($dia,$mes,$año)=split("/", $fecha);
}
if (preg_match("/[0-9]{1,2}-[0-9]{1,2}-([0-9][0-9]){1,2}/",$fecha)){
list($dia,$mes,$año)=split("-",$fecha);
}
$nueva = mktime(0,0,0, $mes,$dia,$año) + $ndias * 24 * 60 * 60;
$nuevafecha=date("d-m-Y",$nueva);
return ($nuevafecha);
}
?>
http://dns.bdat.net/trucos/faqphp-v1/x385.html
Le pasas a la función la antiguedad máxima del post que quieras buscar (por ejemplo 7 días).
Código PHP:
$ndias=-7;
$fecha=date("d-m-Y");
$limite=suma_fechas($fecha,$ndias);
Y luego solo es hacer el query
Código PHP:
$result=mysql_query("SELECT * from `tabla` WHERE 'fecha' >= $limite", $link);
La función es para tipo de dato "date", para "datetime" habría que modificarlo. Lo mismo tambíen funciona, aunque no lo he probado.
Saludos