Вывод строк из БД по дате

kreatorBB

Новичок
Хочу организовать вывод строк из БД, за последние N дней и никак не получается. Прошу помочь.
Данные хранятся с БД с записью в таблице в ячейке:

tinytext и запись в виде 23.06.11 11:03

Мне предложили такой вариант:

SELECT *
FROM `quotes`
WHERE `status` = 'checked' AND `date` > '$DATA'
ORDER BY `rating` DESC LIMIT 0,10

Где $DATA - это дата с которой нужно выбирать строки.

А как вычислить эту дату никак не догнал.

Простите за мой французский, я еще пока на ВЫ с запросами.
 

kreatorBB

Новичок
При внесении значения даты в таблицу задействовано вот так:

$query = mysql_query("INSERT INTO `quotes` VALUES('','$_POST[qidemail]','','$date','0','$_POST[content]','unchecked')");

Где $date - текщая дата на момент внесения.

Задана она чуть выше вот так:

$date = date("d.m.y H:i");

А как составить правильно значение переменной $DATA равную сегодня - 7 дней
чтоб выполнялась задача

SELECT *
FROM `quotes`
WHERE `status` = 'checked' AND `date` > '$DATA'
ORDER BY `rating` DESC LIMIT 0,10
 

predator

web designer
тут вопрос скорее про php
копай функцию time() от которой отнимешь нужное количество дней или чего-там тебе надо, результат затем подставишь в date()
что касается mysql
если у тебя дата хранится в поле типа tinytext, то придётся использовать
функцию mysql CAST() чтобы mysql понял что там дата а не текст

я бы посоветовал хранить дату в виде unixtime ($date = time();)
а при выводе уже форматировать как хочется
это пмсм более гибко
ну и тип поля тогда не tinytext а int ( ещё и быстрее будет работать ; ))
 
Сверху