|
|
09.02.2010, 16:39
|
|
petun
Зарегистрирован: 2009-06-17
Сообщений: 28
|
Есть некий компонент. Допустим объекты от него находятся в разделе с $sub = 50;
Мне нужно вывести часть этих объектов, имеющих поле сtype = 1. Причем вывести в разделе с $sub = 85;
Для этого в системных настройках компонента пишу:
if ($sub == 85) {
$ignore_all = 1;
$query_where = "сtype = 1";
}
но все равно ничего не выводится.. что неправильно делаю, никак понять не могу..
Кто то уже сталкивался с подобными вещами? как правильно сформировать такой запрос?
petun
|
|
|
09.02.2010, 17:25
|
|
DiGGy
DiGGy
Зарегистрирован: 2005-04-04
Сообщений: 1546
|
Есть некий "каркас sql-запроса" select ... from ... where ... order by ... ,который вы можете дополнять.
Когда пишите $ignore_all=1, то весь каркас стирается и вам его надо самому с нуля составлять. В Вашем случае $ignore_all указывать вообще не надо. Задача решается путем дополнения штатного sql-запроса своими условиями.
Temet nosce...
|
|
|
09.02.2010, 18:12
|
|
petun
Зарегистрирован: 2009-06-17
Сообщений: 28
|
Цитата:Когда пишите $ignore_all=1, то весь каркас стирается и вам его надо самому с нуля составлять
Если так, то с помощью каких переменных можно составить этот запрос??? $query_where , $query_select и остальные??
Вообще , посмотреть бы на то что получилось на выходе. а потом уже подправить как надо )
Цитата:Задача решается путем дополнения штатного sql-запроса своими условиями.
я так понимаю мне нужно просто оставить $query_where = "сtype = 1"; и убрать $ignore_all = 1; ?
petun
|
|
|
09.02.2010, 23:19
|
|
petun
Зарегистрирован: 2009-06-17
Сообщений: 28
|
первое решил. кому интересно код выглядит вот так :
Код:if ($sub == 85) {
$ignore_cc = 1;
$ignore_sub = 1;
$query_where = "catid = 1";
}
остался один вопрос, как мне составить запрос, если я указал
$ignore_all=1
petun
|
|
|
10.02.2010, 08:04
|
|
pe3udent
Артур Юсупов
Зарегистрирован: 2008-04-03
Сообщений: 220
|
petun писал(а):остался один вопрос, как мне составить запрос, если я указал $ignore_all=1
Переменная $message_select хранит запрос для вывода информации в компоненте. Вставьте эту переменную в префикс и посмотрите запрос.
|
|
|
10.02.2010, 11:52
|
|
petun
Зарегистрирован: 2009-06-17
Сообщений: 28
|
Ооо.. Спасибо большое!
petun
|
|
|
27.02.2010, 19:49
|
|
Denis
Зарегистрирован: 2008-07-15
Сообщений: 666
|
Цитата:
остался один вопрос, как мне составить запрос, если я указал $ignore_all=1
Через переменные $query_select и $query_from, запрос будет выглядеть так:
SELECT $query_select FROM $query_from
Возможно еще использовать $query_join, $query_where, $query_order, $query_limit
|
|
|
28.02.2010, 03:39
|
|
Гость
Гость
|
Ооо. Спасибо.
|