|
|
19.11.2013, 09:29
|
|
Egorov Serg
Зарегистрирован: 2013-11-05
Сообщений: 15
|
код обработки
if($_GET['search_action']=='1') {
$ignore_sub = $ignore_cc = 1;
if($srchPat) {
$subject=ereg_replace(' +',' ',$srchPat[0]); // убираем лишние пробелы
$srch_patr=explode(" ", $subject); // делим фразу на слова
$srch_patr = array_unique($srch_patr); // убираем дубликаты слов
foreach ($srch_patr as $key)
{
$query_where .= " AND (a.Name LIKE '%$key%' OR a.Description LIKE '%$key%' OR a.Details LIKE '%$key%')";
}
}
}
|
|
|
19.11.2013, 09:39
|
|
Руслан Густокашин
Студия Вэлпис
Зарегистрирован: 2012-02-06
Сообщений: 962
|
нужно вот так сделать (жирным выделены исправления)
Код:
if($_GET['search_action']==1) {
$ignore_sub = $ignore_cc = 1;
$query_where = "1";
if($srchPat) {
$subject=ereg_replace(' +',' ',$srchPat[0]); // убираем лишние пробелы
$srch_patr=explode(" ", $subject); // делим фразу на слова
$srch_patr = array_unique($srch_patr); // убираем дубликаты слов
foreach ($srch_patr as $key)
{
$query_where .= " AND (a.Name LIKE '%$key%' OR a.Description LIKE '%$key%' OR a.Details LIKE '%$key%')";
}
}
}
|
|
|
19.11.2013, 09:57
|
|
Руслан Густокашин
Студия Вэлпис
Зарегистрирован: 2012-02-06
Сообщений: 962
|
Еще рекомендую исправить if($srchPat) на if($srchPat[0])
|
|
|
11.05.2014, 19:07
|
|
Евгений
Patrol Studio
Зарегистрирован: 2014-03-06
Сообщений: 20
|
Подскажите, я вставил код выше, все работает, только с проверкой беда...У меня поиск идет по артикулу. Например если я вбиваю 3-002, то поиск выдает и 13-002 и 3-002 и 33-002 и т.п. Как назначить поиск только по искомой фразе?
|
|
|
14.05.2014, 10:20
|
|
Nexwich
Панасин Александр

Зарегистрирован: 2011-04-05
Сообщений: 1037
|
В настройках раздела нажать "Сохранить изменения"
Модуль "Почтовые уведомления" – настройка email уведомлений на вашем сайте без программирования. Бесплатно. http://netcat.ru/products/CatStore/solution_242.html
|