Новости Joomla

0 Пользователей и 1 Гость просматривают эту тему.
  • 1 Ответов
  • 371 Просмотров
*

Валерон163

  • Осваиваюсь на форуме
  • 29
  • 0 / 0
Здравствуйте, уважаемые форумчане.

В форму в выпадающий список подтягиваю данные.

Код
//<code>
$id = JFactory::getUser()->id;
$db = JFactory::getDbo();
$db->setQuery("SELECT `id` FROM `#__jshopping_vendors` WHERE `user_id`='$id' ");
$id_vendor = $db->loadResult();

// Prepare the empty array
$items = array();

// Prepare the database connection
$db = JFactory::getDbo();

// Keep this if you'd like a "Please select" option, otherwise comment or remove it
$items[] = "|Выберите работу[c]";
 
// Run the SQL query and store it in $results
$db->setQuery("SELECT `product_id`, `name_ru-RU` FROM `#__jshopping_products` WHERE `vendor_id`='$id_vendor' AND `product_publish`='1' ");
$results = $db->loadObjectList();
 
// Now, we need to convert the results into a readable RSForm! Pro format.
// The Items field will accept values in this format:
// value-to-be-stored|value-to-be-shown
// Eg. m|M-sized T-shirt
foreach ($results as $result) {
  $value = $result->product_id;
  $label = $result->product_id;
  $label1 = $result->name_ru-RU;
  $items[] = $value.'|'.$label.'|'.$label1;
}
 
// Multiple values are separated by new lines, so we need to do this now
$items = implode("\n", $items);
 
// Now we need to return the value to the field
return $items;
//</code>


Все опции подтягиваются, а вот названия товаров отображаются как "0".
При этом ни на русском ни на латинице не отображаются данные.

Прошу помощи, в какую сторону копать?
Как вывести названия товаров?
Предполагаю, что это происходит из-за имени поля "name_ru-RU", содержащего тире. Но оно и так в обратных кавычках.
Пока не сработало.
« Последнее редактирование: 24.01.2021, 12:05:38 от Валерон163 »
*

Валерон163

  • Осваиваюсь на форуме
  • 29
  • 0 / 0
Разобрался. Может кому пригодится в похожих ситуациях. Дело было действительно в синтаксисе с полем.
Заменил
$label1 = $result->name_ru-RU;
на
$label1 = $result->{'name_ru-RU'};
Теперь все выводится как положено.
Чтобы оставить сообщение,
Вам необходимо Войти или Зарегистрироваться