PDA

Просмотр полной версии : Работа с exec_INSERTquery


Baltazarr
02.08.2006, 12:06
Создаю extension и запнулся как выполнить команду exec_INSERTquery
пробовал следующим образом
$GLOBALS['TYPO3_DB']->exec_INSERTquery('tt_news', 'LAST_INSERT_ID(),0,0,0,0,..... ');
Перечисляя все поля. Команда выполняется в sql - проверял - данные полей нормальные. А вот через эту функцию ошибок нет, но не добавляется БД?

Описание как ей пользоваться в руководствах - ничего не написано интересного.

void
02.08.2006, 14:34
второй параметр функции - не строка, а массив.

Baltazarr
02.08.2006, 15:57
Да действительно написал как массив, только все равно не добавляет ничего? И ошибок вы выдает.

$fields = array(
'uid' => 'LAST_INSERT_ID()',
'pid' => '0',
'tstamp' => time(),
'crdate' => time(),
'cruser_id' => '0',
'editlock' => '0',
'deleted' => '0',
'hidden' => '0',
'starttime' => '0',
'endtime' => '0',
'fe_group' => '0',
'title' => ' ',
'datatime' => time(),
'image' => '0',
'imagecaption' => '0',
'imagealttext' => '0',
'imagetitletext' => '0',
'related' => '0',
'short' => '0',
'bodytext' => $body,
'author' => '0',
'author_email' => '0',
'category' => '0',
'news_files' => '0',
'links' => '0',
'type' => '0',
'page' => '0',
'keywords' => '0',
'archivedate' => '0',
'ext_url' => '0',
'sys_language_uid' => '0',
'l18n_parent' => '0',
'l18n_diffsource' => 'a:1:{s:6:\"hidden\";N;}',
'no_auto_pb' => '0',
't3ver_oid' => '0',
't3ver_id' => '0',
't3ver_wsid' => '0',
't3ver_label' => '0',
't3ver_state' => '0',
't3ver_stage' => '0',
't3ver_count' => '0',
't3ver_tstamp' => '0',
't3_origuid' => '0');
$GLOBALS['TYPO3_DB']->exec_INSERTquery('tt_news', $fields);

Baltazarr
02.08.2006, 16:21
Все тема закрыта. Нашел ошибку - она была в неправильном название поля datetime

Dutchak Vitaly
02.08.2006, 23:32
Все тема закрыта. Нашел ошибку - она была в неправильном название поля datetime

Скачайте TYPO3 Digest там класс по работе с базой полностью описан. будет легче