sql-запрос drupal для получения одного узла, созданного на текущую дату - PullRequest
0 голосов
/ 29 августа 2011

У меня есть проект, в котором мне нужно создать один узел определенного типа для каждого дня. Может кто-нибудь сказать мне, как мой форматированный запрос SQL должен быть отформатирован так, чтобы я извлекал данные одного узла из базы данных, где дата узла совпадает с текущей датой? У меня проблема, потому что метка времени узла в базе данных содержит информацию о дате и времени. Таким образом, я не могу выполнить прямую проверку на равенство, потому что я могу проверять только текущую метку времени.

1 Ответ

2 голосов
/ 29 августа 2011

Базовый пример для D6.Вы можете сделать что-то вроде:

<?php
  $start = date('U', mktime(0, 0, 0, date('n'), date('j'), date('Y')));
  $end = date('U', mktime(23, 59, 59, date('n'), date('j'), date('Y')));

  // Database query to retrieve the node's nid
  $nid = db_result(db_query('SELECT nid FROM {node} WHERE created BETWEEN %d AND %d', $start, $end));

  // Load the found node
  $node = node_load($nid);
?>

Если ваш узел действительно прост (просто заголовок и тело и т. Д., Как базовые типы "page" и "story") вместо получения nid, можно просто использовать db_query(), чтобы получить всю информацию прямо из таблицы узлов.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...