[ Поиск ] - [ Пользователи ] - [ Календарь ]
Полная Версия: Чувствительность к регистру в поиске
Gerad
Здравствуйте, форумчане. Пожалуйста, помогите советом.

Вот код:

$keyword = '[[:<:]]'.$var.'[[:>:]]'; 
$query = "SELECT * FROM table WHERE col RLIKE '$keyword'";
$data = mysql_query($query) or die(mysql_error());


Этот скрипт делает первую букву запроса чувствительной к регистру. Как можно избавиться от этого не нарушив функциональность поиска? Пробовал использовать UPPER - ничего не вышло. Спасибо заранее.





Спустя 30 минут, 5 секунд (6.09.2010 - 08:18) linker написал(а):
LIKE

Спустя 4 минуты, 50 секунд (6.09.2010 - 08:23) Gerad написал(а):
Цитата
LIKE


Не помогает.

Думаю, что корень проблемы где-то тут:
'[[:<:]]'.$var.'[[:>:]]'


Не очень понимаю, что значат эти двоеточия и скобки.

Спустя 7 минут, 35 секунд (6.09.2010 - 08:31) linker написал(а):
LIKE не чувствителен к регистру в определенных условиях: коллэйшен столбца col не должен быть binary или latin-1 (если мне не изменяет память).

Спустя 7 минут, 21 секунда (6.09.2010 - 08:38) Guest написал(а):
Как я писал в первом посте, у меня чувствительна к регистру только первая буква переменной. Полагаю, тут дело не в like.

Спустя 3 минуты, 45 секунд (6.09.2010 - 08:42) Gerad написал(а):
Ссори, ошибся. Чувствительны все кроме последней. Вообще, у меня везде UTF-8 general ci стоит.

Спустя 10 минут, 58 секунд (6.09.2010 - 08:53) Guest написал(а):
Вот, нашёл ещё тему, там у человека такая же проблема. У меня примерно такие же значения коллэйшн, только коллэйшн сервера. Только я не знаю как его поменять.

Спустя 4 минуты, 47 секунд (6.09.2010 - 08:57) Guest написал(а):
Сделал lower(col) - заработало как нужно. Странно, везде написано, что и к столбцу и к переменной применять нужно.
Быстрый ответ:

 Графические смайлики |  Показывать подпись
Здесь расположена полная версия этой страницы.
Invision Power Board © 2001-2025 Invision Power Services, Inc.