2012-01-04 3 views
0

Я пытаюсь сделать запись в блоге программным путем с помощью этого кода.Запись в блоге Drupal программно

$node->title = $_POST['title']; 
$node->created = time(); 
$node->changed = time(); 
$node->status = 1; //published 
$node->comment=1; 
$node->promote = 0; 
$node->sticky = 0; 
$node->language='en'; 
$node->body = $_POST['content']; 
$node->type = 'blog'; 
node_save($node); 
print_r($node); 

Узел создается в базе данных, но когда я открываю запись в блоге на веб-сайте, он не показывает тело. Правильно ли это?

ответ

1

И это не взорвало ??? Вау. Это удивительно. Я бы попробовал $node->body[$node->language][0]['value'] = $_POST['content'];, потому что тело теперь текстовое поле.

+0

Мне не стоило оставлять мой ответ после того, как я изменил его в соответствии с вашими предложениями, поэтому я удалил его. Спасибо за советы, которые я всегда задавался вопросом, нужно ли чистить входные данные перед добавлением данных в поле таким образом, я никогда не вникал в эту часть ядра :) – Clive

+0

ok теперь я получаю эту ошибку PDOException: SQLSTATE [ 23000]: Нарушение ограничения целостности: 1062 Дублируемая запись '1-80-0-0-en' для ключа 'PRIMARY' –

+0

ЕГО ЖИТЬ !!!! он работает, я тестировал его на другой БД, и он отлично работает ... там должно быть что-то нехорошо в моем, Спасибо, муха! –

Смежные вопросы