Не... сейчас проверил.. Не проходит вариант...

*

Qznec

догадываюсь почему
(Здесь есть изображение, скрытое от гостей. Для просмотра зарегистрируйтесь или залогиньтесь)

надо в самом запросе LOWER() добавлять
попробую чего-нибудь придумать

*

Qznec

попробуйте, плз, в файле includes/classe/database/mysqli.php
в 301-й строке написать вместо

$search_sql .= $column . ' like :keyword or ';такое
$search_sql .= 'lower('.$column.')' . ' like lower(:keyword) or ';а в database.php поубирать все то, что наизменяли
(Здесь есть изображение, скрытое от гостей. Для просмотра зарегистрируйтесь или залогиньтесь)

*

Qznec

если заработает, то тоже самое, наверное, стоит проделать и в файле includes/classe/database/mysqli_innodb.php в 30-й строке...

Не - не пашет...

*

Qznec

странно 
(Здесь есть изображение, скрытое от гостей. Для просмотра зарегистрируйтесь или залогиньтесь)

Странно что у Вас работает) У большинства не работает...

*

Qznec

Назвал товар (книжку по ПХП) "Книга о безопасности PHP" (понимаю, что перевод не правильный, но для поиска удобней
(Здесь есть изображение, скрытое от гостей. Для просмотра зарегистрируйтесь или залогиньтесь)
)
вывел запрос, который генерирует скрипт для ключевых слов "НиГ езОП" 
(Здесь есть изображение, скрытое от гостей. Для просмотра зарегистрируйтесь или залогиньтесь)

получилось

select SQL_CALC_FOUND_ROWS distinct p.*, pd.*, m.*, i.image, if(s.status, s.specials_new_products_price, null) as specials_new_products_price, if(s.status, s.specials_new_products_price, p.products_price) as final_price from shop_products p left join shop_manufacturers m using(manufacturers_id) left join shop_specials s on (p.products_id = s.products_id) left join shop_products_images i on (p.products_id = i.products_id and i.default_flag = 1) , shop_products_description pd, shop_categories c, shop_products_to_categories p2c where p.products_status = 1 and p.products_id = pd.products_id and pd.language_id = 1 and p.products_id = p2c.products_id and p2c.categories_id = c.categories_id and (lower(pd.products_name) like lower('%НиГ%') or lower(pd.products_description) like lower('%НиГ%')) and (lower(pd.products_name) like lower('%езОП%') or lower(pd.products_description) like lower('%езОП%'))В магазине выдало этот товар и в PhpMyAmnin'е тоже
(Здесь есть изображение, скрытое от гостей. Для просмотра зарегистрируйтесь или залогиньтесь)

В названии ищет, а в тексте описания не ищет он...

*

Qznec

Оставил название на английском (Pro PHP Security), в дескрипшене написАл "Книга о безопасности PHP"
Запрос тот же
Результат тот же 
(Здесь есть изображение, скрытое от гостей. Для просмотра зарегистрируйтесь или залогиньтесь)

*

Qznec

попробуйте еще

если заработает, то тоже самое, наверное, стоит проделать и в файле includes/classe/database/mysqli_innodb.php в 30-й строке...
может у Вас через этот скрипт запрос формируется...
но врядли...

Не - у меня обычная база... Интересно бы опробовать на innodb-базе

*

Qznec

А Вы не могли бы в файле includes/classe/database.php
после строки

$this->sql_query = substr($this->sql_query, 0, -5);написать
$f = fopen('error.log', 'a');
fwrite($f, $this->sql_query);
fclose($f);
запустить поиск в магазине
после этого в корне магазина появится файл "error.log"
прикрепите его сюда, посмотрим в чем дело
(Здесь есть изображение, скрытое от гостей. Для просмотра зарегистрируйтесь или залогиньтесь)

Вот лог. В каталоге слово "Проверка". В поиске - "проверка"

*

Qznec

а Вы изменения в файле mysqli.php убрали?
а то у Вас в конце запроса

(pd.products_name like '%проверка%' or pd.products_description like '%проверка%')а у меня
(lower(pd.products_name) like lower('%проверка%') or lower(pd.products_description) like lower('%проверка%'))