LiveInternetMail.ru
Форум русской поддержки Joomla!® CMS
27.05.2012, 12:44:44 *
Добро пожаловать, Гость. Пожалуйста, войдите или зарегистрируйтесь.
Вам не пришло письмо с кодом активации?

Войти
   
   Начало   Поиск Joomla 1.7 FAQ Joomla 1.5 FAQ Joomla 1.0 FAQ Правила форума Новости Joomla Войти Регистрация Помощь  
Страниц: [1]   Вниз
  Добавить закладку  |  Печать  
Автор Тема: store() и несколько таблиц mysql  (Прочитано 441 раз)
0 Пользователей и 1 Гость смотрят эту тему.
zt.Dan4ik
Осваиваюсь на форуме
***

Репутация: +1/-0
Offline Offline

Пол: Мужской
Сообщений: 44


« : 22.11.2011, 14:54:28 »

Здравствуйте. Снова нуждаюсь в Вашей помощи.
Вопрос в следующем. На front-end части сайта пользователь заполняет определённую форму. Но данные должны сохранятся в две таблицы.
Например:
Есть таблицы jos_properties_products с послем name и jos_properties_products_translations с полем pt_name
На сайта два поля с именем name и pt_name
Как сделать так что бы данные из поля name попадали в таблицу jos_properties_products а pt_name в jos_properties_products_translations

В данный момент функция store() выглядит так:

Код:
 function store($data)
{
JTable::addIncludePath(JPATH_ADMINISTRATOR.DS.'components'.DS.'com_properties'.DS.'tables');
$row =& JTable::getInstance('products', 'Table');
if (!$row->bind($data)) {
$this->setError( $this->_db->getErrorMsg() );
return false;
}
if (!$row->check()) {
$this->setError( $this->_db->getErrorMsg() );
return false;
}
if (!$row->store()) {
$this->setError( $this->_db->getErrorMsg() );
return false;
}
return true;
}

Для таблицы jos_properties_products_translations есть отдельный файл "tables" по этому пути: (JPATH_ADMINISTRATOR.DS.'components'.DS.'com_properties'.DS.'tables')

Заранее спасибо за помощь!
Записан
SmokerMan
Профи
********

Репутация: +520/-20
Offline Offline

Пол: Мужской
Сообщений: 5195



« Ответ #1 : 22.11.2011, 15:37:34 »

написать нужный SQL запрос и выполнять его. В этом или другом каком-нибудь методе.
Записан
zt.Dan4ik
Осваиваюсь на форуме
***

Репутация: +1/-0
Offline Offline

Пол: Мужской
Сообщений: 44


« Ответ #2 : 22.11.2011, 15:40:57 »

а c использованием двух файлов "tables" в которых уже размечена структура таблиц и выполняется запрос?
Записан
Lex
Тестеры
*****

Репутация: +254/-1
Offline Offline

Пол: Мужской
Сообщений: 1842


« Ответ #3 : 22.11.2011, 15:45:33 »

Ну так выполни тот же самый алгоритм для другой tables
Записан
SmokerMan
Профи
********

Репутация: +520/-20
Offline Offline

Пол: Мужской
Сообщений: 5195



« Ответ #4 : 22.11.2011, 15:52:13 »

я понятия не имею чего нужно.
Но насколько мне известно операторы INSERT и UPDATE работают с одной таблицей. Т.е. это минимум два запроса будет.
Так же если в них используются какие-то индексы, то их тоже нужно учитывать.
Кроме вас структуры вашей БД никто не знает, следовательно помочь чем-то будет проблематично))
Записан
zt.Dan4ik
Осваиваюсь на форуме
***

Репутация: +1/-0
Offline Offline

Пол: Мужской
Сообщений: 44


« Ответ #5 : 22.11.2011, 16:18:35 »

Lex, я об этом думал и даже пытался сделать, в начале не получилось, поэтому обратился на форум. Твой пост заставил меня еще раз попробовать и все получилось. В первой попытке сделал ошибку. Без тебя я бы не справился  drink

Код:
  function store($data)
{
JTable::addIncludePath(JPATH_ADMINISTRATOR.DS.'components'.DS.'com_properties'.DS.'tables');
$row =& JTable::getInstance('products', 'Table');
$ptrow =& JTable::getInstance('products_translations', 'Table');

if (!$row->bind($data)) {
$this->setError( $this->_db->getErrorMsg() );
return false;
}
if (!$row->check()) {
$this->setError( $this->_db->getErrorMsg() );
return false;
}
if (!$row->store()) {
$this->setError( $this->_db->getErrorMsg() );
return false;
}
if (!$ptrow->bind($data)) {
$this->setError( $this->_db->getErrorMsg() );
return false;
}
if (!$ptrow->check()) {
$this->setError( $this->_db->getErrorMsg() );
return false;
}
if (!$ptrow->store()) {
$this->setError( $this->_db->getErrorMsg() );
return false;
}
return true;
}

SmokerMan, у меня такое чувство что ты совсем не читал мой первый пост. Я ведь описал для примера элементарную структуру базы и формы. Ведь этого достаточно что бы понять суть вопроса. Я не просил за меня сделать всю работу поэтому не приводил структуру таблиц с которыми работаю ибо она огромная.
Записан
Страниц: [1]   Вверх
  Добавить закладку  |  Печать  
 
Перейти в:  

Рейтинг@Mail.ru Rambler Top100 Powered by SMF 1.1.16 | SMF © 2006, Simple Machines

Joomlaforum.ru is not affiliated with or endorsed by the Joomla! Project or Open Source Matters.
The Joomla! name and logo is used under a limited license granted by Open Source Matters
the trademark holder in the United States and other countries.

LiveInternet