Фильтрация ИС по первой букве

#
Фильтрация ИС по первой букве
Доброго времени суток. Вобщем, у меня есть ИС содержащая регионы и города России. Нужно сделать фильтрацию по первой букве города например как тут http://www.allvrn.ru/l-%C4/phones.html

Нашел похожую тему для ИМ, но не получается интегрировать...
Вставляю в динамическую страницу перед выводом ИС

/* Ограничиваем по названию */
if (to_str($_GET['name_part']) != "")
{
$element['type'] = 0; // 0 — основное св-во, 1 — дополнительное
$element['name'] = 'information_items_name';
$element['prefix'] = 'AND'; // префикс
$element['if'] = 'LIKE'; // Условие
$element['value'] = quote_smart(to_str ($_GET['name_part'])) . '%';
$element['sufix'] = '';
$param['select'][] = $element;

$external_propertys['name'] = to_str($_GET['name_part']);

/* Применять фильтр */
$external_propertys['apply_filter'] = true;
}

Но эффекта от работы не вижу. Подскажите пожалуйста, в чем у меня ошибка.
Модератор
#
Re: Фильтрация ИС по первой букве
gizma.vrn,
а покажите строку в браузере, когда фильтруете + проверьте, передается ли $param в метод показа ИС.
#
Re: Фильтрация ИС по первой букве
была ошибка с передачей $param, теперь  передаётся

строка в браузере help/telefon/?name_part=%E0

но теперь вылетает ошибка
Ошибка выполнения запроса! - You have an error in your SQL syntax; check the manual that corresponds to your MySQL server version for the right syntax to use near ''а%' ORDER BY information_items_date asc LIMIT 0, 200' at line 18
Модератор
#
Re: Фильтрация ИС по первой букве
gizma.vrn,
Полностью покажите текст запроса в поддержку.
#
Re: Фильтрация ИС по первой букве
Использую стандартную динамическую страницу ИС, только добавил в неё вот это
/* Ограничиваем по названию */
if (to_str($_GET['name_part']) != "")
{
$element['type'] = 0; // 0 — основное св-во, 1 — дополнительное
$element['name'] = 'information_items_name';
$element['prefix'] = 'AND'; // префикс
$element['if'] = 'LIKE'; // Условие
$element['value'] = quote_smart(to_str ($_GET['name_part'])) . '%';
$element['sufix'] = '';
$property['select'][] = $element;


/* Применять фильтр */
$external_propertys['apply_filter'] = true;
}

      // Запрещаем передачу в XML свойств групп
      $property['xml_show_group_property'] = false;

      /* Отображаем информационную систему */
      $GLOBALS['LA_InformationSystem']->ShowInformationSystem($InformationSystem_id, $GLOBALS['INFSYS_result']['group'], $xsl_list, $InformationResult['items_on_page'], $InformationResult['items_begin'], $external_propertys, $property);


Делал по примеру вот этой темы http://www.hostcms.ru/forums/22/2718/
Модератор
#
Re: Фильтрация ИС по первой букве
gizma.vrn,
я имел ввиду текст запроса, в котором возникает ошибка. Он есть в журнале событий и проходит почтой.
#
Re: Фильтрация ИС по первой букве
Вот код запроса.
ORDER BY  information_items_date   asc
                                                LIMIT 0, 200' at line 18. Запрос: SELECT SQL_CALC_FOUND_ROWS DISTINCT information_items_table.information_items_id
                                                FROM information_items_table
                                                LEFT JOIN information_groups_table
                                                        ON information_items_table.information_groups_id = information_groups_table.information_groups_id
                                                        AND information_groups_table.information_groups_access IN (0,-1)                                                        
                                                
                                                
                                                WHERE 1  AND information_items_table.information_systems_id = '22'
                                                 AND information_items_table.information_items_status = '1'
                                                        AND (information_items_table.information_items_putend_date >= '2009-08-14 09:46:45'
                                                        OR information_items_table.information_items_putend_date ='0000-00-00 00:00:00')
                                                        AND information_items_table.information_items_putoff_date <= '2009-08-14 09:46:45'
                                                        
                                                
                                                AND information_items_table.information_items_access IN (0,-1)
                                                
                                                  AND (information_items_table.information_groups_id='0'
                                                        )  AND information_items_nameLIKE 'а%'    ORDER BY  information_items_date   asc
                                                LIMIT 0, 200
#
Re: Фильтрация ИС по первой букве
нашел ошибку
information_items_nameLIKE 'а%'    ORDER BY  information_items_date   asc
в этой строчке пропустил пробел, но всё равно не работает.
Модератор
#
Re: Фильтрация ИС по первой букве
gizma.vrn,
Добавил пробел в Ваш запрос и проверил - синтаксических ошибок нет.
#
Re: Фильтрация ИС по первой букве
ошибок нету, но и эффекта от запроса нету...
Пожалуйста помогите разобраться
Авторизация