|
|
02.10.2010, 02:19
|
|
Гость
Гость
|
На основе модуля "Поиск по сайту" я создал свой компонент, где в системных настройках указал следующее:
Код:
if($_GET[f_project_Name]) $project = "`project` = '$_GET[f_project_Name]' AND";
if($_GET[f_free_Name]) $free = "`free` = '$_GET[f_free_Name]' AND";
$query_from = "Message81 AS cat";
$query_where = "$project $free 1";
$query_order = "cat.Priority";
Почему-то при вводе пригодных значений все равно выводится "По Вашему запросу ничего не найдено."
Делаю echo "SELECT * FROM $query_from WHERE $query_where ORDER BY $query_order";
и вставляю в phpmyadmin в поле sql-запроса - выполняется и нужные записи находит. В чем проблема с netcat'ом или что я не так делаю?
|
|
|
04.10.2010, 12:57
|
|
MipH
Спирин Дмитрий
Зарегистрирован: 2004-12-22
Сообщений: 252
|
Ох, какую-то кашу вы сделали из шаблона поиска и своей задачей...
Я так и не понял, что вы хотите и причем тут компонент поиска.
Полагаю, вам лучше описать задачу, а я бы предложил решение.
bbzone@gmail.com | bbz.ru | miph.info | miph.ruВы можете обратиться ко мне, если необходима разработка функционала на NetCat
|
|
|
08.10.2010, 17:38
|
|
Гость
Гость
|
В общем ладно, не суть. Разобрался как сделать по-нормальному. У меня теперь такой вопрос, есть список со станциями метро. Данный список находится под номером 6 в полях компонента (поле metro) и по этому полю возможен поиск. При обращении по адресу /objects/cat.html?action=index&srchPat%5B6%5D=1 ищется объект с соответствующим номером метро. Мне надо объединить некоторые станции. В системных настройках компонента я написал следующее:Код:
$search_r = $_REQUEST[srchPat][6];
if(($_REQUEST[srchPat][6] == 40) || ($_REQUEST[srchPat][6] == 50) || ($_REQUEST[srchPat][6] == 52)) $search_r = " (`metro` = '40' OR `metro` = '50' OR `metro` = '52') ";
elseif(($_REQUEST[srchPat][6] == 8) || ($_REQUEST[srchPat][6] == 27)) $search_r = " (`metro` = '8' OR `metro` = '27') ";
elseif(($_REQUEST[srchPat][6] == 23) || ($_REQUEST[srchPat][6] == 35)) $search_r = " (`metro` = '23' OR `metro` = '35') ";
elseif(($_REQUEST[srchPat][6] == 39) || ($_REQUEST[srchPat][6] == 45)) $search_r = " (`metro` = '39' OR `metro` = '45') ";
elseif(($_REQUEST[srchPat][6] == 5) || ($_REQUEST[srchPat][6] == 11)) $search_r = " (`metro` = '5' OR `metro` = '11') ";
$query_where = $search_r;
В общем не работает данная конструкция, а если не найдено вообще ничего, то выпадает ошибка:
Warning: s_list_class(648, 668): error in SQL query in /home/xxx/public_html/netcat/require/s_list.inc.php on line 465
Как бы это реализовать аккуратно?
|
|
|
14.10.2010, 00:32
|
|
Гость
Гость
|
Ни у кого нет возможных вариантов решения? Помогите пожалуйста, очень нужно.
|