Не удаляются записи через API

Главные вкладки

Аватар пользователя K0r5hun K0r5hun 11 ноября 2010 в 10:26

Здравствуйте.

Не удаляются ноды с помощью API из под крона.

Есть некий файл, часть кода приведена ниже. Он при получении GET запроса удаляет записи. Get запрос можно отправить в ручную со страницы сайта (из под админа работает, из под гостя нет). Мне сейчас необходимо добиться, чтобы эта процедура осуществлялась автоматически через крон.

PS В файле также есть функция добавления! При этом она работает даже из под гостя! Есть какие-то предположения?

Процедура удаления:

<?php
$delquery 
"SELECT node.nid AS nid
FROM node node
WHERE node.type in ('tovar')"
;

$deldata db_query($delquery);
while (
$delitem=db_fetch_object($deldata)) {
    
node_delete($delitem->nid);
    echo 
". ";
}}
?>

API подключаю в отдельном php файле следующим образом:

<?php
//require the bootstrap include
require_once $_SERVER["DOCUMENT_ROOT"].'/includes/bootstrap.inc';

//Load Drupal
drupal_bootstrap(DRUPAL_BOOTSTRAP_FULL);
?>

Комментарии

Аватар пользователя vgoodvin vgoodvin 11 ноября 2010 в 10:47

А почему не реализуете модулем через hook_cron ?
Используйте отладку наконец, девел насколько мне известно позволяет писать вашу отладочную информацию и в базу, и в файл, и банально в HTML.

Аватар пользователя K0r5hun K0r5hun 11 ноября 2010 в 11:42

С Drupal в плане разработки столкнулся только недавно, да и опыт работы с CMS небольшой. За советы спасибо.

Аватар пользователя graker graker 11 ноября 2010 в 11:45

На всякий случай (вдруг пригодится) сообщаю: node_delete() проверяет, есть ли у пользователя, от чьего имени запущен скрипт, права на удаление данной ноды. Если нет - удалять не будет.

Аватар пользователя K0r5hun K0r5hun 11 ноября 2010 в 12:24

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