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

Войти
   
   Начало   Поиск Joomla 3.0 FAQ Joomla 2.5 FAQ Joomla 1.5 FAQ Правила форума Новости Joomla Реклама Войти Регистрация Помощь  
Страниц: [1]   Вниз
  Добавить закладку  |  Печать  
Автор

Переделать запросы к БД под Joomla

 (Прочитано 94 раз)
0 Пользователей и 1 Гость смотрят эту тему.
Glog
Захожу иногда
**

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

Сообщений: 20


« : 03.07.2017, 14:27:32 »

Здравствуйте, помогите переделать запросы к базе данных под Joomla

есть запрос
Код:
$conn=mysql_connect("localhost","root","") or die("Could not connect");
mysql_select_db("subject",$conn) or die("could not connect database");
заменил на

Код:
$db = JFactory::getDbo();

$query = $db->getQuery(true)
            ->select($db->quoteName(array('SUBJ_TITLE', 'SUBJ_LINK')))
            ->from($db->quoteName('#__subject'));


$db->setQuery($query);

$result = $db->loadResult();

return $result;
это по идее правильно, но есть еще запрос на добавление данных в бд
Код:
 $sql = "INSERT into subject (`SUBJ_TITLE`, `SUBJ_LINK`)
       values('$emapData[0]','$emapData[1]')";

сделал так

Код:
$db = JFactory::getDbo();

// Create a new query object.
$query = $db->getQuery(true);

// Insert columns.
$columns = array('SUBJ_TITLE', 'SUBJ_LINK');

// Insert values.
$values = array(1001, $db->quote('custom.message'), $db->quote('Inserting a record using insert()'), 1);

// Prepare the insert query.
$query
    ->insert($db->quoteName('#__subject'))
    ->columns($db->quoteName($columns))
    ->values(implode(',', '$emapData[0]','$emapData[1]'));

// Set the query using our newly populated query object and execute it.
$db->setQuery($query);
$db->execute();

но добавление не происходит, подскажите как правильно сделать запрос?
Записан
Septdir
Практически профи
*******

Репутация: +97/-3
Offline Offline

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


Skype: septdir


« Ответ #1 : 03.07.2017, 14:37:53 »

Мне нрвиться как объект https://docs.joomla.org/Inserting,_Updating_and_Removing_data_using_JDatabase#Using_an_Object
Записан
b2z
Support Team
*****

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

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


Разраблю понемногу


« Ответ #2 : 03.07.2017, 14:58:43 »

Код
$values = array($db->quote($emapData[0]), $db->quote($emapData[1]));
 

Код
->values(implode(',', $values));
Записан
Glog
Захожу иногда
**

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

Сообщений: 20


« Ответ #3 : 03.07.2017, 18:53:28 »

Код
$values = array($db->quote($emapData[0]), $db->quote($emapData[1]));
 

Код
->values(implode(',', $values));


Воспользовался вашим вариантом, спасибо


Спасибо за ответ!



« Последнее редактирование: 04.07.2017, 18:01:37 от Glog » Записан
Страниц: [1]   Вверх
  Добавить закладку  |  Печать  
 
Перейти в:  

Powered by SMF 1.1.21 | 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