календарик

ilal

Новичок
календарик

господа, такая ситуация...

надо сделать календарик по новостям... документы за месяц, так сказать

вопрос к тем, кто подобное реализовывал- как проще с базами поступить?

все страницы имеют поле дата- секунды он начала эпохи,

вроде, понятно, от начала первого дня месяца до последнего ищем... но! а как бы ещё узнать, какая запись к какому дню относится?

или проще заранее матрицу дней составить и потом уже результат селекта средствами пхп драть на кусочки?
 

ilal

Новичок
мммммм... прикольно... и? что мне это дает?

мне надо выбрать все страницы за месяц и определить, к какому дню сколько каких относятся...

желательно одним запросом... или хотя бы отобрать по одной странице на каждый день-- чтоб знать, что в этот день были записи...

-~{}~ 07.05.09 14:10:

если это сложно, то, думаю, проще сделать тогда тупо выборку страниц а потом уже средствами пхп их разбирать как массив многомерный, например...

мне так кааааэца...
 

Фанат

oncle terrible
Команда форума
это отвечает на твой вопрос

-~{}~ 07.05.09 14:12:

а мне кажется, что задача никак не стоит вопроса на форуме.
и решать ее можно хоть так, хоть эдак
 

ilal

Новичок
в смысле? это можно решить одним запросом к базе?
 

Фанат

oncle terrible
Команда форума
ЧТО решить-то?
что ты хочешь получить из запроса? чтобы база тебе календарик нарисовала со ссылками? приведи пример данных, которые тебе нужны
 

ilal

Новичок
массив... например...

ключ- день месяца, значение-- есть или нету страницы созданные в этот день...

или несколько значений-- ид страниц этого дня...

так понятно?

в таблице страниц кроме прочего ид и момент создания в юникстайме...
 

Farsh

~ on ~ high ~ wave ~
ilal
В mysql желательно даты хранить НЕ в timestamp, для более удобной работы с ними встроенными функциями.

По теме:
Если принимать в прямом смысле вот это
мне надо выбрать все страницы за месяц и определить, к какому дню сколько каких относятся... желательно одним запросом...
То да, можно, но в таком случае понадобится еще обработка в PHP.

Если, например, нужно вытащить кол-во новостей за какой-то день, то в чем проблема ? Ищем в мануале функции работы с датами, используем GROUP BY и COUNT.
Допустим дана таблица id, title, timestamp.
Тогда как-то так:
SELECT FROM_UNIXTIME(timestamp, '%e') as day_num, count(*) as count FROM table GROUP BY day_num WHERE [timestamp от первого дня какого-то месяца до последнего дня этого же месяца]
 

Фанат

oncle terrible
Команда форума
значение-- есть или нету страницы созданные в этот день
не нужен тебе такой массив.
достаточно массива только с днями, на которые есть новости.
 
Сверху