Почему этот запрос работает внутри блока, а не внутри пользовательского содержимого Panel?

Почему следующий запрос работает в блоке Drupal, но не когда он является частью "пользовательского содержимого" на панели на странице панелей? Это выдает ошибку, говорящую о проверке синтаксиса запроса рядом с "AND node.type in....". Кроме того, если я помещаю его в блок, а затем отображаю этот блок на странице панелей, он работает просто отлично. Так что, пока у меня это работает... Я действительно хочу знать, почему это не сработает, если поместить его прямо в контент Panel.

<?php
global $user;
if($user->uid) {
$result = db_query("Select COUNT(node.nid) from {node}
   LEFT JOIN {flag_content} flag_content_node 
       ON node.nid = flag_content_node.content_id AND 
       flag_content_node.fid = 7 
       where node.uid = %d AND node.type in ('node_type') AND
       (flag_content_node.uid IS NULL)", $user->uid);

$item_count = db_result($result);

print $item_count;
}?>

1 ответ

Вероятно, что-то не так с вашим параметром в запросе, потому что именно там он идет не так. Возможно если $user->uid нулевой? Затем он вставит '' в запрос вместо "%d"? Это казалось бы странным.

Это также означает, что вы не вошли в систему.

Нет, этого не может быть, так как вы проверяете это $user->uid верно, во-первых.

Другие вопросы по тегам