Помогите с запросом в бд mysql

Статус
В этой теме нельзя размещать новые ответы.

Rabben

Старатель
Регистрация
26 Мар 2009
Сообщения
159
Реакции
10
Здравствуйте, у меня стоит вывод популярных 5 статей:
Код:
$article_arraypop = $articlepop->article_list(0, 5, "article_views DESC", "", 1);
Чтоб было более менее понятна структура запроса:
Код:
$article_array = $article->article_list($page_vars[0], $articles_per_page, $sort, $where, 1);
Выводит прекрасно, нареканий никаких нет. Хочу модифицировать, и сделать, чтоб выводило за последний месяц. В таблице помимо article_views, есть article_date_start
алгоритм такой:
Код:
  $article_date_start = time();
  if($_POST['article_date_start_hour'] == "12") { $_POST['article_date_start_hour'] = 0; }
  if($_POST['article_date_start_ampm'] == "PM") { $_POST['article_date_start_hour'] += 12; }
  $article_date_start = mktime($_POST['article_date_start_hour'], $_POST['article_date_start_minute'], 0, $_POST['article_date_start_month'], $_POST['article_date_start_day'], $_POST['article_date_start_year']);
Тоесть в бд попадает результат, аля такого: 1291738041
Помогите доработать запрос так, чтоб выводило популярные статьи за месяц. Тоесть выводил популярные статьи из диапозона теперешняя дата - 30 дней. Надеюсь внятно объяснил)
 
Здравствуйте, у меня стоит вывод популярных 5 статей:
Код:
$article_arraypop = $articlepop->article_list(0, 5, "article_views DESC", "", 1);
Чтоб было более менее понятна структура запроса:
Код:
$article_array = $article->article_list($page_vars[0], $articles_per_page, $sort, $where, 1);
Выводит прекрасно, нареканий никаких нет. Хочу модифицировать, и сделать, чтоб выводило за последний месяц. В таблице помимо article_views, есть article_date_start
алгоритм такой:
Код:
  $article_date_start = time();
  if($_POST['article_date_start_hour'] == "12") { $_POST['article_date_start_hour'] = 0; }
  if($_POST['article_date_start_ampm'] == "PM") { $_POST['article_date_start_hour'] += 12; }
  $article_date_start = mktime($_POST['article_date_start_hour'], $_POST['article_date_start_minute'], 0, $_POST['article_date_start_month'], $_POST['article_date_start_day'], $_POST['article_date_start_year']);
Тоесть в бд попадает результат, аля такого: 1291738041
Помогите доработать запрос так, чтоб выводило популярные статьи за месяц. Тоесть выводил популярные статьи из диапозона теперешняя дата - 30 дней. Надеюсь внятно объяснил)

сделай условие article_date_start>time()-24*3600*30;
 
А как его сделать вместо article_views DESC?
 
в методе article_list один из аргументов - $where
возможно через него и можно передать:

PHP:
$article_arraypop = $articlepop->article_list(0, 5, "article_views DESC", "article_date_start>".strtotime('NOW - 1 month'), 1);
 
Статус
В этой теме нельзя размещать новые ответы.
Назад
Сверху