|
|
17.08.2010, 16:34
|
|
sparton
Шекера Евгений
Зарегистрирован: 2010-03-16
Сообщений: 141
|
Возникла задача вывода в компоненте данных из другой таблицы, а не из собственной. Использовал $ignore_all в системных настройках компонента, чтобы составить свой запрос. Показал debug , запрос отработал, данные деббагер показал.
Как теперь вывести объекты в списке? $f_Name - ничего не показывает. Как отобразить теперь полученные данные?
|
|
|
17.08.2010, 17:32
|
|
Denis
Зарегистрирован: 2008-07-15
Сообщений: 666
|
В $results_vars указываете переменные, каждая из которых соответствует полю из таблицы, например:
$results_vars = '$f_id, $f_name';
или
$results_vars = "\$f_id, \$f_name";
эти переменные ( $f_id, $f_name) будут доступны в "объекте в списке"
|
|
|
17.08.2010, 18:20
|
|
sparton
Шекера Евгений
Зарегистрирован: 2010-03-16
Сообщений: 141
|
Запрос выглядит следующим образом:
"select t1.Url, t1.Name from Message115 t1 join tbl t2 ON...."
В "объект в списке" должен содержать переменные $f_Url, $f_Name , верно?
|
|
|
17.08.2010, 18:44
|
|
malich
Андрей Малков
Зарегистрирован: 2005-08-09
Сообщений: 522
|
В системных настройках компонента должна быть примерно следующая запись
Код:$query_join = " LEFT JOIN MessageXX as parent ON (a.Message_ID=parent.Message_ID)";
$query_select = " Name as new_Name, Id as new_Id";
$result_vars = '$new_Name, $new_Id';
Теперь у вас будут доступны переменные $new_Name и $new_Id
Можете данные второй таблицы поместить в массив:
Код: $massiv = array();
$res = mysql_query("SELECT `Message_ID`, `Name` FROM `MessageXX` WHERE `Checked`='1'");
while ($row=mysql_fetch_assoc($res))
{
$massiv[$row[Message_ID]] = array_merge( $row,
array("Name"=>"$row[Name]"
));
}
Затем выводить информацию из массива
Код:".$massiv[XX][Name]."
|
|
|
17.08.2010, 19:12
|
|
sparton
Шекера Евгений
Зарегистрирован: 2010-03-16
Сообщений: 141
|
Андрей, в очередной раз спасибо за развернутый ответ! Попробую Ваш вариант.
|
|
|
17.08.2010, 23:17
|
|
sparton
Шекера Евгений
Зарегистрирован: 2010-03-16
Сообщений: 141
|
Цитата:$result_vars = '$new_Name, $new_Id'; - именно этой строки не хватало
|