Примеры работы с базой данных в Joomla 3

25.12.2015

после обновления движка до третей версии, у нас появилось несколько удобных способов для работы с БД.

Подготовка безопасного запроса к базе Joomla:

1
2
3
4
5
6
7
$input = JFactory::getApplication()->input;
$sSearch = $input->getString('text', '');

$db = JFactory::getDBO();
$sSearch = $db->quote('%'.$db->escape(trim($sSearch), true).'%');

//- echo $query->__toString().'<br />';

Запрос к базе использую объект $query:

1
2
3
4
5
6
7
8
9
10
11
$db = JFactory::getDBO();
$query = $db->getQuery(true)
  ->select('id, title')
  ->from($this->_sTable.' AS a')
  ->where('a.id_parent = '.$id_parent)
  ->order('a.ordering');

//- echo $query->__toString().'<br />';

$db->setQuery($query);
$aRows = $db->loadObjectList();

Получаем данные путем обычного/прямого SQL запроса:

1
2
3
4
5
6
7
8
9
$sSql = 'SELECT id FROM sojos_so_certification_items WHERE id IN
(SELECT id_item FROM sojos_so_certification_rel_items_tags WHERE id_tag IN
(SELECT id FROM sojos_so_certification_tags WHERE title LIKE ('.$sSearch.') ))';

//- echo $sSql.'<br />';

$db->setQuery($sSql);

$aRows = $db->loadObjectList();


Категории: CMS Joomla 3.X, Joomla
Яндекс.Метрика