Поиск строки с участием буквы "я"

  • Автор темы Автор темы Arman
  • Дата начала Дата начала

Arman

Guest
Поиск строки с участием буквы "я"

Перерыл форум не смог ничего найти. Суть проблемы в следующем.
Задается поиск например: "пояс"
Выдает один результат
Задается "ПОЯС" выводится другой.
На локальном сервере все работает как надо, а вот у хостеров нет =(
строка передается ГЕТом.
код запроса:
$sql .= " AND UPPER(`S_SUBJECTS`.`NAME`) LIKE '%".mysql_escape_string(strtoupper($search))."%'";
ну пробовали различные варианты включая BINARY. Не помогает =(
Причем с другими буквами запрос отрабатывает нормально, если не присутсвует "я".
Я предпологаю, что и с такими буквами как "ё" тож не будет работать, просто их мы не используем в базе.
Воть.
Что не понятно - поясню.
 
Да нечё не ясно.
Кинь что выдается в первом и втором случае и что в базе
 
ForJest
Я понимаю, что проблема где-то в MySQL, вот ток где?
SET NAMES не помог.

beg_mysql
Описываю более подробно на примере:
Задаю в поиске "пояс"
Выдает:
Массаж поясницы и ягодиц
Задаю "ПОЯС"
Выдыет:

КОРСЕТ ПОЯСНИЧНЫЙ (С усилителями, размер M)
STIL
КОРСЕТ ПОЯСНИЧНЫЙ (С усилителями, размер S)
STIL
КОРСЕТ ПОЯСНИЧНЫЙ (Размер XL)
STIL
КОРСЕТ ПОЯСНИЧНЫЙ (Размер S)
STIL
КОРСЕТ ПОЯСНИЧНЫЙ (С усилителями, размер XL)
STIL
КОРСЕТ ПОЯСНИЧНЫЙ (Размер L)
STIL
КОРСЕТ ПОЯСНИЧНЫЙ (С усилителями, размер L)
STIL
КОРСЕТ ПОЯСНИЧНЫЙ (Размер M)
STIL
ПОЯС ЭЛАСТИЧНЫЙ МЕДИЦИНСКИЙ "TONUS"
Tonus Elast,ООО
ПОЯС ЭЛАСТИЧНЫЙ МЕДИЦИНСКИЙ "TONUS"
Tonus Elast,ООО

А должен выдавать в обоих случаях и то и то. На локалке работает.
Если задаю "по" или "ПО" работает нормально.
Можете сами проверить сайт называется apteka.uz

-~{}~ 02.12.05 09:18:

ForJest
Кстати версия мускула на сервере: 4.0.25-standard
 
А головой подумать? Каким образом BINARY может помочь в поиске? Настраивайте сервер. Я так понимаю сейчас character_set = latin1?
 
Profic
Че тут думать. Я же русским языком сказал, что нет доступа к конфигу мускула =(((

BINARY использовали для сравнения строк при формировании запроса.
Переводили все в верхний регистр и сравнивали бинарно.
Да, character_set = latin1.
 
Тогда средствами сервера забудь. Делаешь отдельное поле в котором хранишь переведенные PHP-ой в верхний регистр значения. И по нему уже ищешь.
Однако заметно проще настроить таки муську, чем изобретать велосипед. Если хостинг такой корявый, то от него бежать нада. Или не русский :).
 
Текс... Вывод ясен.
Мож кто еще что предложит? =)
А то уж больно неохота добавлять поле =(
Прошу ваши варианты....
 
Arman
Так тебе больно добавлять поле или неохота добавлять поле?
Пожалуйста конкретизируй, думаю если больно - то предложат ещё варианты.
Если же просто неохота - то значит ты зажрался.
 
Больно. Не так там все просто....
База связанна еще с локальной версией на Дельфи и строение у них эдинтичные...
Поэтому изменения там повлекут за собой изменения и в локалке... что не желательно.
Воть
 
Сверху