Дополнительное свойство элемента ИС в макет (RAND)

#
Дополнительное свойство элемента ИС в макет (RAND)
Есть ИС, в ней группы и элементы. У некоторых элементов есть возможность прописать 5 доп.свойств типа текст. Хотелось бы выводить по рендому одно из доп.свойств справа в макет при нахождении в разделе структуры соотв данному элементу ИС.
Email: golden-puma@yandex.ru; Telegram: @GoldenPuma; Сайт: https://goldenpuma.ru
#
Re: Дополнительное свойство элемента ИС в макет (RAND)
Puma писал(а):
Хотелось бы выводить по рендому одно из доп.свойств справа в макет при нахождении в разделе структуры соотв данному элементу ИС
- самое простое - это, конечно, написать соответсвующий запрос к базе данных. Значения доп. свойств содержатся в таблице information_propertys_items_table. Нужно выбрать из нее 1 запись с сортировкой с использованием функции RAND(), у которой значение поля information_items_id должно быть равно идентификатору текущего инфоэлемента($GLOBALS['INFSYS_result']['item']). Значение же свойства содержится в поле information_propertys_items_value.
#
Re: Дополнительное свойство элемента ИС в макет (RAND)
а вот так я начала делать, пока без рендома,  но выдает ошибку(Замечание: Undefined variable: information_system_id в файле /home/f/fspartncom/public_html/hostcmsfiles/data_templates/11.htm (строка 114)
Resource id #114):
<?php


if (isset($GLOBALS['INFSYS_result']['item']))
{  
$InformationSystem = new InformationSystem();

$information_systems_id = 20;

$aRows = $InformationSystem->GetAllInformationItemsPropertys($GLOBALS['INFSYS_result']['item'], $information_system_id);
  
   print_r($aRows);
}
else
{
пустота;
}

?>


что не так??
Email: golden-puma@yandex.ru; Telegram: @GoldenPuma; Сайт: https://goldenpuma.ru
Модератор
#
Re: Дополнительное свойство элемента ИС в макет (RAND)
Puma писал(а):
что не так??


Ознакомьтесь с описанием метода GetAllInformationItemsPropertys() в API: http://www.hostcms.ru/api/HostCMS_5/InformationSystem.html#methodGetAllInformationItemsPropertys и сравните с тем, что Вы написали. Как минимум нужно так:
<?php


if (isset($GLOBALS['INFSYS_result']['item']))
{  
$InformationSystem = new InformationSystem();

$information_systems_id = 20;

$aRows = $InformationSystem->GetAllInformationItemsPropertys($information_systems_id);
  
while($row = mysql_fetch_assoc($aRows))

{

     print_r($row);

}
}
else
{
echo 'пустота';
}

?>
Вы только что начали читать предложение, чтение которого вы уже заканчиваете.
#
Re: Дополнительное свойство элемента ИС в макет (RAND)
смотрела я метод, но т.к. я делала по аналогии с этим http://hostcms.ru/forums/17/2608/ , то не приянла к сведению то что написано в описании метода
теперь мне напечатался большой массив каких-то данных
что дальше с ним делать?
как распечатать только нужное мне доп.свойство,  одно из пяти по рэндому?
Email: golden-puma@yandex.ru; Telegram: @GoldenPuma; Сайт: https://goldenpuma.ru
#
Re: Дополнительное свойство элемента ИС в макет (RAND)
ауу помощь в этом деле все еще требуется
Email: golden-puma@yandex.ru; Telegram: @GoldenPuma; Сайт: https://goldenpuma.ru
Модератор
#
Re: Дополнительное свойство элемента ИС в макет (RAND)
Puma,
Обратитесь в поддержку по данному вопросу. Подготовим код и опубликуем.
Вы только что начали читать предложение, чтение которого вы уже заканчиваете.
#
Re: Дополнительное свойство элемента ИС в макет (RAND)
спасибо
Email: golden-puma@yandex.ru; Telegram: @GoldenPuma; Сайт: https://goldenpuma.ru
Модератор
#
Re: Дополнительное свойство элемента ИС в макет (RAND)
Обещанный код:


<?php
if (isset($GLOBALS['INFSYS_result']['item']) && $GLOBALS['InformationResult']['item_id'] > 0)
{  
   $InformationSystem = new InformationSystem();
   $information_systems_id = 20;
   $aRows = $InformationSystem->GetAllInformationItemsPropertys($information_systems_id);
   $aText = array();
   $information_items_id = to_int($GLOBALS['InformationResult']['item_id']);
   while($row = mysql_fetch_assoc($aRows))
   {
      $aText[] = $InformationSystem->GetInformationItemPropertyValue($information_items_id, $row['information_propertys_id']);
   }
   if (count($aText))
   {
      $rand_key = array_rand($aText);
      echo $aText[$rand_key]['information_propertys_items_value'];
   }
}
?>
Вы только что начали читать предложение, чтение которого вы уже заканчиваете.
#
Re: Дополнительное свойство элемента ИС в макет (RAND)
еще раз тут скажу "спасибо"!!!
Email: golden-puma@yandex.ru; Telegram: @GoldenPuma; Сайт: https://goldenpuma.ru
Авторизация