Russian TYPO3 community Форум больше не используется. Присоединяйтесь к каналу #community-ru в Slack for TYPO3 community  

Вернуться   Russian TYPO3 community > Обсуждение общих технических вопросов > Общие вопросы

Ответ
 
Опции темы Опции просмотра
Старый 15.09.2011, 14:37   #1
Anlov
Senior Member
 
Регистрация: 02.05.2011
Сообщений: 138
По умолчанию запись данных прямо в tt_content

пытаюсь сделать импорт писем из почтового ящика. есть куча папок, в каждой из которых некоторое количество сообщений.
все нашел, все прочитал, по переменным распихал. Ручками сделал в ВЕ страницы для каждой папки из почтового ящика. теперь пытаюсь записать каждое сообщение прямо в tt_content с соответствуюшим pid. Запись в tt_content появляется. А на странице в соответствующем пункте меню FE - без изменений. Что я не сделал или делаю не так?
Anlov вне форума   Ответить с цитированием
Старый 16.09.2011, 14:58   #2
dmartynenko
Senior Member
 
Аватар для dmartynenko
 
Регистрация: 20.07.2007
Адрес: Беларусь, Минск
Сообщений: 957
Отправить сообщение для dmartynenko с помощью ICQ
По умолчанию

У каждой записи tt_content есть еще тип (текст, текст + изображение и т.п.), поля видимости (скрыта, удалена - по умолчанию 0), поля видимости по дате-времени (от-доб по умолчанию 0), номер столбца в которой выводить.

Если вы создадите вручную через BE запись и она появится в FE (то есть в FE у вас все настроено и работает корректно), и потом по "образцу" будете создавать записи роботом указывая аналогичные значения в полях, только меня содержание и дату добавления (crdate, tstamp), то все должно получиться.
dmartynenko вне форума   Ответить с цитированием
Старый 16.09.2011, 15:27   #3
Anlov
Senior Member
 
Регистрация: 02.05.2011
Сообщений: 138
По умолчанию

да так и делаю - и ничего.
даже, если я в БД тупо копирую какую-то уже имеющуюся запись и изменяю там uid и sorting, то этот элемент ни BE, ни в FE не появляется. Попробуйте сами, может я где-то что-то упускаю?
Мысль, что содержимое любого элемента страницы сохраняется и содержится только в tt_content получается правильная?
Anlov вне форума   Ответить с цитированием
Старый 16.09.2011, 16:15   #4
dmartynenko
Senior Member
 
Аватар для dmartynenko
 
Регистрация: 20.07.2007
Адрес: Беларусь, Минск
Сообщений: 957
Отправить сообщение для dmartynenko с помощью ICQ
По умолчанию

А если вы у существующей записи поменяете uid и sorting она исчезнет из BE ?

Есть еще системная таблица sys_refindex, в которой сохраняются взаимосвязи записей. Но не думаю что она так сильно влияет на вывод в BE или FE. По крайней мере запиcи из других таблиц (созданные экстами) выводятся без учета этой таблицы.
dmartynenko вне форума   Ответить с цитированием
Старый 18.09.2011, 22:02   #5
elezeo
Продвинутый
 
Аватар для elezeo
 
Регистрация: 05.07.2011
Адрес: Россия, Интернет
Сообщений: 69
По умолчанию

А Вы попробуйте сделать Импорт средствами (функциями) самого TYPO3
$res = $GLOBALS['TYPO3_DB']->sql_query($query);
Только разбейте запросы на одиночные.
Эффект будет тот же?
__________________
Успех не приходит к тем, кто ждет, что он к ним придет!
Он приходит к тем, кто создал для Успеха благоприятные условия!
elezeo вне форума   Ответить с цитированием
Старый 19.09.2011, 12:27   #6
dmartynenko
Senior Member
 
Аватар для dmartynenko
 
Регистрация: 20.07.2007
Адрес: Беларусь, Минск
Сообщений: 957
Отправить сообщение для dmartynenko с помощью ICQ
По умолчанию

$GLOBALS['TYPO3_DB']->sql_query это то же самое что вызвать mysql_query().
dmartynenko вне форума   Ответить с цитированием
Старый 19.09.2011, 16:30   #7
elezeo
Продвинутый
 
Аватар для elezeo
 
Регистрация: 05.07.2011
Адрес: Россия, Интернет
Сообщений: 69
По умолчанию

Ну в целом да.
Тогда делайте дебаг вывода контента и смотрите в чем разница между выборками.
Проверьте также вот эти параметрв
colPos=0 AND sys_language_uid=0
Вообще предполагаю дело не в контенте а в привязке их к странице.
Экспортируете гнмелько строк из вашей таблицы, сравните их визуально с теми, что Вы вставляете.
И если сами не можете понять - выложите на обозрение структуру Вашей таблицы tt_content и несколько строк из нее, в том числе ваши, чтобы эксперты уже могли с чем то работать, а не просто со словами.
__________________
Успех не приходит к тем, кто ждет, что он к ним придет!
Он приходит к тем, кто создал для Успеха благоприятные условия!

Последний раз редактировалось elezeo; 19.09.2011 в 16:53
elezeo вне форума   Ответить с цитированием
Старый 20.09.2011, 16:56   #8
Anlov
Senior Member
 
Регистрация: 02.05.2011
Сообщений: 138
По умолчанию

Цитата:
Сообщение от dmartynenko Посмотреть сообщение
А если вы у существующей записи поменяете uid и sorting она исчезнет из BE ?

Есть еще системная таблица sys_refindex, в которой сохраняются взаимосвязи записей. Но не думаю что она так сильно влияет на вывод в BE или FE. По крайней мере запиcи из других таблиц (созданные экстами) выводятся без учета этой таблицы.
Точно. Меняю UID с 240 на 241 - исчезает. В таблице sys_refindex указана зависимость между страницей и контентом в таком виде:
имя таблицы - pages; recuid - 217 (судя по всему, id страницы); ref_table - tt_content (ссылающаяся таблица?); ref_uid - 240 (ссылающийся элемент?)
Так вот, когда добавляю запись прямо в tt_content и даю номер uid 240 - блок стразу появляеися и ВЕ, и в FE. Теперь пытаюсь добавить копию записи с uid 240 в sys_refindex, но только uid даю 241 (запись с таким uid уже есть в tt_content) - блок нигде не появляется. Там (sys_refindex) есть еще такое поле hach, что интересно там лежит?
Anlov вне форума   Ответить с цитированием
Старый 20.09.2011, 17:13   #9
dmartynenko
Senior Member
 
Аватар для dmartynenko
 
Регистрация: 20.07.2007
Адрес: Беларусь, Минск
Сообщений: 957
Отправить сообщение для dmartynenko с помощью ICQ
По умолчанию

Закралось подозрение, что у вас включена какая-нибудь версионность, либо многоязычие.

Так как sys_refindex маловероятно что используется при выводе в FE.
dmartynenko вне форума   Ответить с цитированием
Старый 20.09.2011, 17:53   #10
elezeo
Продвинутый
 
Аватар для elezeo
 
Регистрация: 05.07.2011
Адрес: Россия, Интернет
Сообщений: 69
По умолчанию

В классе "t3lib\class.t3lib_tcemain.php" есть такая функция
Код:
	/**
	 * Update Reference Index (sys_refindex) for a record
	 * Should be called any almost any update to a record which could affect references inside the record.
	 *
	 * @param	string		Table name
	 * @param	integer		Record UID
	 * @return	void
	 */
	function updateRefIndex($table, $id) {
		$refIndexObj = t3lib_div::makeInstance('t3lib_refindex');
		/* @var $refIndexObj t3lib_refindex */
		$result = $refIndexObj->updateRefIndexTable($table, $id);
	}
Попробуйте вызвать ее для своей записи.
Я не уверен, но кажется она как раз и создаст вам нужные записи в таблице sys_refindex. Вы можете покапаться в этом классе. Возможно найдете что-то еще.

А вот для FE действительно маловероятно использование иных таблиц, если только контент не связан с какими либо еще таблицами.
__________________
Успех не приходит к тем, кто ждет, что он к ним придет!
Он приходит к тем, кто создал для Успеха благоприятные условия!
elezeo вне форума   Ответить с цитированием
Ответ


Ваши права в разделе
Вы не можете создавать новые темы
Вы не можете отвечать в темах
Вы не можете прикреплять вложения
Вы не можете редактировать свои сообщения

BB code is Вкл.
Смайлы Вкл.
[IMG] код Вкл.
HTML код Выкл.

Быстрый переход

Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
Ошибка TemplaVoila после переноса базы данных dodger Общие вопросы 4 25.04.2010 15:48
сохранять запись не на той странице, где создается demav TypoScript практикум 2 10.07.2007 22:55
Выборка данных из своей таблицы БД c0d3r Общие вопросы 4 27.02.2007 11:01
Поля типа float в базе данных Алексей Общие вопросы 1 21.04.2005 16:13
Поля типа float в базе данных Алексей Общие вопросы 0 15.04.2005 15:36


Часовой пояс GMT +4, время: 05:31.


Работает на vBulletin® версия 3.8.1.
Copyright ©2000 - 2024, Jelsoft Enterprises Ltd.
Перевод: zCarot

Хостинг и техническая поддержка: TYPO3 Лаборатория