Ситуация такова:
Есть в базе таблица с полями
id int, title char(255), date DATETIME.
Надо вывести в таком виде (например):
понедельник, 23 апреля 2012
12:10 текст
11:43 текст
воскресенье, 22 апреля 2012
12:10 текст
11:43 текст
четверг, 18 апреля 2012
12:10 текст
11:43 текст
Пожалуйста если кто знает как это сделать с минимум запросов, или кто знает такую статью помогите
Спасибо за помощь
Спустя 35 минут, 35 секунд (23.04.2012 - 12:26) Renden написал(а):
Markus111
/* Function by Renden | renden@bk.ru
* Получение русской даты, входящие данные:
* дата, (день(d), неделя(w), месяц(m), год(y) (в любом порядке)).
* Если дата не указана (null) выводит текущий день.
* пример: echo GetDay('2011-08-01','d','m','y');
*/
function GetDay($date = null) {
$arg = func_get_args();
$return = '';
$time = strtotime($date);
$arr_month = array(1=>"января","февраля","марта","апреля","мая","июня","июля","августа","сентября","октября","ноября","декабря");
$arr_month_n = array(1=>"январь","февраль","март","апрель","май","июнь","июль","август","сентябрь","октябрь","ноябрь","декабрь");
$arr_week = array("воскресенье","понедельник","вторник","среда","четверг","пятница","суббота");
$return .= (in_array('w',$arg)) ? (($date == NULL) ? $arr_week[date('w')] : $arr_week[date('w', $time)]).', ' : NULL;
$return .= (in_array('d',$arg)) ? (($date == NULL) ? date('j') : date('j', $time)).' ': NULL;
$return .= (in_array('m',$arg) && in_array('d',$arg)) ? (($date == NULL) ? $arr_month[date('n')] : $arr_month[(int)date('m', $time)]).' ' : ((!in_array('d',$arg)) ? $arr_month_n[(int)date('m', $time)].' ' : NULL);
$return .= (in_array('y',$arg)) ? (($date == NULL) ? date('Y') : date('Y', $time)).' г.': NULL;
return $return;
}
$l_day = ''; $l_month = '';
$query = mysql_query("SELECT `id`,`title`,`date`,
MONTH(`date`) AS `month`,
DAY(`date`) AS `day`,
DATE_FORMAT(`date`, '%H:%i') AS `time`
FROM `test`"); //Измени только таблицу с test на свою
while($row = mysql_fetch_assoc($query ))
{
if($row['day'] == $l_day && $row['month'] == $l_month)
{
echo $row['time'] . $row['title'].'<br>';
}
else
{
echo GetDay($row['date'], 'w','d','m','y').'<br>';
echo $row['time'] . $row['title'].'<br>';
}
$l_day = $row['day']; $l_month = $row['month'];
}
Спустя 7 минут, 1 секунда (23.04.2012 - 12:33) Markus111 написал(а):
Спасибо за помощь, код работает.
Пишу +1
Пишу +1
_____________
Womans in your town