Перейти к содержимому


Фотография
- - - - -

Access Zoo element data


  • Закрытая тема Тема закрыта
Сообщений в теме: 3

#1 styopinevgeniy

styopinevgeniy

Отправлено 27 May 2013 - 13:43

Добрый день, уважаемые разработчики!

Передо мной стоит задача получить информацию, хранящуюся в одной из позиций элемента Zoo, с помощью запроса в БД. Очевидно, все значения позиций элемента Zoo хранятся в БД в таблице %%_zoo_item в столбце elements.

Но в этом столбце информация, как я понимаю, хранится в XML-формате.

На просторах интернета я нашёл функцию, с помощью которой можно осуществить доступ к необходимой позиции:

<?php
include ('configuration.php');

function getZooElem($id, $eid, $type) {
$db =& JFactory::getDBO()
$query = "SELECT elements FROM 'aajb9_zoo_item' WHERE id = " . $id;
$db->setQuery($query);
$elements = json_decode($db->loadResult(), true);
return $elements[$eid][0][$type];
}

echo getZooElem(1, '80cb6cbb-84a9-49eb-8a89-1e394f8501bd', 'value');
?>

Но вызов данного php-файла выдаёт ошибку сервера. Очевидно, что-то идёт не так...
Уважаемые коллеги, прошу Вас помочь в решении возникающей проблемы. Быть может, код написан не совсем верно, хотя его пользователи отзываются о его работоспособности... Или я что-то не учёл...


  • 0

#2 Андрей

Андрей

Отправлено 27 May 2013 - 15:29

Вроде если делать запрос в бд Joomla методами префикс указывать не надо.

Если вы знаете item id или element id то все это можно осуществить Зуу методами. Как-то так 

<?php
$zoo = App::getInstance('zoo');
$item = $zoo->table->item->get($item_id);
echo $item->getElement($element_id);

Сообщение отредактировал SmetDenis: 27 May 2013 - 18:11

  • 1

#3 styopinevgeniy

styopinevgeniy

Отправлено 28 May 2013 - 11:54

К сожалению, ваш метод не работает.

Правильно ли я понимаю, опираясь на представленный мною код, что:

  • $item_id у вас = $id у меня
  • $element_id у вас = $eid у меня

И куда нужно вставить этот код? Я, например, просто формировал php-файл и вставлял в него строки, а потом вызывал из браузера...


  • 0

#4 SmetDenis

SmetDenis

Отправлено 29 May 2013 - 04:55

К сожалению, ваш метод не работает.

Код работает. А как вы проверяли, если не знаете куда вставлять?

 

Можете например его использовать в любом шаблоне JBZoo 


  • 0
JBZoo v4.0 и новый чудный мир Open Source GPL
Отключайте проверку лицензий как можно скорее!



— Есть два типа людей: Кто еще не делает бекапы и кто уже делает бекапы.





Click to return to top of page in style!