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

Arman

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

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

beg_mysql

Новичок
Да нечё не ясно.
Кинь что выдается в первом и втором случае и что в базе
 

Arman

Guest
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
 

Profic

just Profic (PHP5 BetaTeam)
А головой подумать? Каким образом BINARY может помочь в поиске? Настраивайте сервер. Я так понимаю сейчас character_set = latin1?
 

Arman

Guest
Profic
Че тут думать. Я же русским языком сказал, что нет доступа к конфигу мускула =(((

BINARY использовали для сравнения строк при формировании запроса.
Переводили все в верхний регистр и сравнивали бинарно.
Да, character_set = latin1.
 

Profic

just Profic (PHP5 BetaTeam)
Тогда средствами сервера забудь. Делаешь отдельное поле в котором хранишь переведенные PHP-ой в верхний регистр значения. И по нему уже ищешь.
Однако заметно проще настроить таки муську, чем изобретать велосипед. Если хостинг такой корявый, то от него бежать нада. Или не русский :).
 

Arman

Guest
Текс... Вывод ясен.
Мож кто еще что предложит? =)
А то уж больно неохота добавлять поле =(
Прошу ваши варианты....
 

ForJest

- свежая кровь
Arman
Так тебе больно добавлять поле или неохота добавлять поле?
Пожалуйста конкретизируй, думаю если больно - то предложат ещё варианты.
Если же просто неохота - то значит ты зажрался.
 

Arman

Guest
Больно. Не так там все просто....
База связанна еще с локальной версией на Дельфи и строение у них эдинтичные...
Поэтому изменения там повлекут за собой изменения и в локалке... что не желательно.
Воть
 
Сверху