Я полностью озадачен этим, пытаясь часами, но безуспешно, надеясь, что кто-то может помочь. Попытка создать скрипт cron для ежедневного запуска, который возвращает строки, которые на 7 дней старше текущей даты.
Дело в том, что мой запрос ничего не возвращает. Никаких сообщений об ошибках, ничего (я знаю, что в БД есть записи за последние 7 дней - мы получаем около 7000 новых записей в день, так что они есть!) Я пробовал SELECT * и успешно выводил дату редактирования , так что все работает, кроме моего SQL-скрипта.
Столбец, на который я ссылаюсь (edit_date), имеет тип «datetime», сформированный с помощью Y-m-d h-m-s. Этот столбец всегда имеет значение даты и времени, назначенное как при создании, так и при редактировании.
function get_ad_sql($table){
$sql = "SELECT
*
FROM
".$table."
WHERE
edit_date = DATE_SUB(NOW(), INTERVAL 7 DAY)
";
return $sql;
}
И вызов функции и «попытка» повторить первичный_ключ:
$sqlAng = get_ad_sql('angebote');
$result = mysql_query($sqlAng);
while($row = mysql_fetch_array($result)){
echo $row['primary_key'];
}
Я пробовал все варианты DATE_SUB (NOW (), INTERVAL 7 DAY), включая CURDATE (), DATE_FORMAT (edit_date, '% m / % d /% Y '), которые я мог найти здесь и в Интернете, но не мог заставить ничего работать. Надеюсь, кто-нибудь может мне помочь!