Parovoz.COM

Сайт "Паровоз ИС" - российский (и не только) железнодорожный портал.
Текущее время: 29/03/2024 13-19

Часовой пояс: UTC + 3 часа




Начать новую тему Ответить на тему  [ Сообщений: 17 ] 
Автор Сообщение
Непрочитанное сообщениеДобавлено: 26/08/2006 23-34 
Господин ПЖ

Зарегистрирован: 12/02/2006 12-46
Сообщения: 584
Sergofan писал(а):
По идее, нужно наверно сделать поиск без разницы по регистру.


Это не реализуемо по условиям существования СУБД. По крайней мере так было.


Вернуться к началу
 Профиль  
 
 Заголовок сообщения:
Непрочитанное сообщениеДобавлено: 26/08/2006 23-43 
Оранжевые штаны

Зарегистрирован: 12/02/2006 02-06
Сообщения: 18
В связи с техническими особенностями поисковой системы галереи, все названия локомотивов, включая строчные и подстрочные индексы, пишутся прописными буквами. ПО крайней мере, Д.З. об этом явно упоминал. К тому же не стоит забывать про англоязычную составляющую.


Вернуться к началу
 Профиль  
 
 Заголовок сообщения:
Непрочитанное сообщениеДобавлено: 27/08/2006 13-23 
Жёлтые штаны

Зарегистрирован: 17/02/2006 11-41
Сообщения: 417
Откуда: малая арнаутская
поиск должен быть без учета регистра. иначе это жутко неудобно.
что тут за техническая проблема может быть, я не понимаю. ведь можно построить индексное выражение для поиска, где имена преобразованы в аппер кейс.


Вернуться к началу
 Профиль  
 
 Заголовок сообщения:
Непрочитанное сообщениеДобавлено: 27/08/2006 13-46 
Господин ПЖ

Зарегистрирован: 12/02/2006 12-46
Сообщения: 584
Victor Mikhailov писал(а):
поиск должен быть без учета регистра. иначе это жутко неудобно.
что тут за техническая проблема может быть, я не понимаю. ведь можно построить индексное выражение для поиска, где имена преобразованы в аппер кейс.


Что за техпроблема это - не знаю, это ДЗ лучше спросить, но действительно, СУБД учитывает регистры. Например поиск "Москва" дает 453 фотографии, а "москва" - ноль.


Вернуться к началу
 Профиль  
 
 Заголовок сообщения:
Непрочитанное сообщениеДобавлено: 28/08/2006 13-44 
Оранжевые штаны

Зарегистрирован: 12/02/2006 02-06
Сообщения: 18
Мне все же кажется, что регистрозависимость поисковой системы имеет своей причиной английскую составляющюю названий. Ведь объяснить иностранному посетителю/автору особенности именования отечественного подвижного состава в латинской транскрипции, вроде ChS2t или ChS2T весьма затруднительно.

К тому же, исторически сложилось, что изначально индексы в галерее обозначались прописными буквами, поэтому даже батальон модераторов не справится с редактированием названий фотографий и приведением всего к официальному единообразию.

Возможно, имеет этот факт отразить в Справке, чтобы начинающие могли грамотно воспользоваться поисковой системой. А то тут в другом форуме, где я обитаю, не смоги на Паровозе найти фото ТЭП80, ибо задавали его в поиске как ТЭП-80. :)


Вернуться к началу
 Профиль  
 
 Заголовок сообщения:
Непрочитанное сообщениеДобавлено: 28/08/2006 14-12 
Сиреневые штаны

Зарегистрирован: 12/02/2006 16-40
Сообщения: 344
Откуда: Горький-Московский
DF писал(а):
Что за техпроблема это - не знаю, это ДЗ лучше спросить, но действительно, СУБД учитывает регистры. Например поиск "Москва" дает 453 фотографии, а "москва" - ноль.


Так сервер находится заруб ежом. Соотвественно СУБД тоже англоязычная. И функция преобразования регистров тоже учитывает только английские буквы.


Вернуться к началу
 Профиль  
 
 Заголовок сообщения:
Непрочитанное сообщениеДобавлено: 28/08/2006 16-07 
Оранжевые штаны

Зарегистрирован: 13/02/2006 00-44
Сообщения: 15
Откуда: Нижний Новгород
nikki писал(а):
Так сервер находится заруб ежом. Соотвественно СУБД тоже англоязычная. И функция преобразования регистров тоже учитывает только английские буквы.


Угу. Именно так. Если обратить внимание - англоязычный поиск регистронезависим.


Вернуться к началу
 Профиль  
 
 Заголовок сообщения:
Непрочитанное сообщениеДобавлено: 28/08/2006 20-44 
Господин ПЖ

Зарегистрирован: 01/01/1970 03-00
Сообщения: 1963
Откуда: Москва - Гродно - Бостон
Рыбыч писал(а):
nikki писал(а):
Так сервер находится заруб ежом. Соотвественно СУБД тоже англоязычная. И функция преобразования регистров тоже учитывает только английские буквы.


Угу. Именно так. Если обратить внимание - англоязычный поиск регистронезависим.

Именно так. Оператор LIKE в MySQL 4 категорически отказывается воспринимать кириллические верхний и нижний регистры одинаково. Если кто знает, как с этим бороться, - пишите мне лично, буду очень благодарен.

_________________
Ваш Д.З.


Вернуться к началу
 Профиль  
 
 Заголовок сообщения:
Непрочитанное сообщениеДобавлено: 29/08/2006 13-10 
Зелёные штаны

Зарегистрирован: 23/06/2006 16-43
Сообщения: 163
Откуда: Санкт-Петербург
Посольку движок написан на PHP, то могу привести пример, как справится с регистрозависимостью с помощью
массивов символов.

Простой запрос вида:
Код:
include('dbconnect.php');
$r=mysql_query("select * from gallery where name like '".$name."%' or author like '".$author."%'",$dbconnect);
будет регистрозависимым.

Но если создать массивы символов и использовать массивы в SQL запросе, то регистр символов как в
латинской кодировке, так и в кириллической будет проигнорирован.
Код:
include('dbconnect.php');
$l=array('[aA]', '[bB]', '[cC]', '[dD]', '[eE]', '[fF]', '[gG]', '[hH]', '[iI]', '[jJ]', '[kK]', '[lL]', '[mM]', '[nN]', '[oO]', '[pP]', '[qQ]', '[rR]', '[sS]', '[tT]', '[uU]', '[vV]', '[wW]', '[xX]', '[yY]', '[zZ]', '[аА]', '[бБ]', '[вВ]', '[гГ]', '[дД]', '[еЕ]', '[ёЁ]', '[жЖ]', '[зЗ]', '[иИ]', '[йЙ]', '[кК]', '[лЛ]', '[мМ]', '[нН]', '[оО]', '[пП]', '[рР]', '[сС]', '[тТ]', '[уУ]', '[фФ]', '[хХ]', '[цЦ]', '[чЧ]', '[шШ]', '[щЩ]', '[ьЬ]', '[ыЫ]', '[ъЪ]', '[эЭ]', '[юЮ]', '[яЯ]');
$rl=array('/[aA]/', '/[bB]/', '/[cC]/', '/[dD]/', '/[eE]/', '/[fF]/', '/[gG]/', '/[hH]/', '/[iI]/', '/[jJ]/', '/[kK]/', '/[lL]/', '/[mM]/', '/[nN]/', '/[oO]/', '/[pP]/', '/[qQ]/', '/[rR]/', '/[sS]/', '/[tT]/', '/[uU]/', '/[vV]/', '/[wW]/', '/[xX]/', '/[yY]/', '/[zZ]/', '/[аА]/', '/[бБ]/', '/[вВ]/', '/[гГ]/', '/[дД]/', '/[еЕ]/', '/[ёЁ]/', '/[жЖ]/', '/[зЗ]/', '/[иИ]/', '/[йЙ]/', '/[кК]/', '/[лЛ]/', '/[мМ]/', '/[нН]/', '/[оО]/', '/[пП]/', '/[рР]/', '/[сС]/', '/[тТ]/', '/[уУ]/', '/[фФ]/', '/[хХ]/', '/[цЦ]/', '/[чЧ]/', '/[шШ]/', '/[щЩ]/', '/[ьЬ]/', '/[ыЫ]/', '/[ъЪ]/', '/[эЭ]/', '/[юЮ]/', '/[яЯ]/');

$r=mysql_query("select * from gallery where name regexp '".preg_replace($rl,$l,$name)."' or author regexp '".preg_replace($rl,$l,$author)."'",$dbconnect);


Я надеюсь, что понятно объяснил?

_________________
==============================
Вадим


Вернуться к началу
 Профиль  
 
 Заголовок сообщения:
Непрочитанное сообщениеДобавлено: 29/08/2006 17-37 
Господин ПЖ

Зарегистрирован: 01/01/1970 03-00
Сообщения: 1963
Откуда: Москва - Гродно - Бостон
Радист писал(а):
Я надеюсь, что понятно объяснил?

Да, но это же криво...

_________________
Ваш Д.З.


Вернуться к началу
 Профиль  
 
 Заголовок сообщения:
Непрочитанное сообщениеДобавлено: 29/08/2006 18-22 
Зелёные штаны

Зарегистрирован: 23/06/2006 16-43
Сообщения: 163
Откуда: Санкт-Петербург
Д.З. писал(а):
Радист писал(а):
Я надеюсь, что понятно объяснил?

Да, но это же криво...


Хм... Особой кривости в этом не вижу. Ну если есть желание, то попросите хостинг-провайдера сменить локали на сервере, и тщательно настроить MySQL сервер для работы с русскими кодировками. Я думаю, что первый вариант Вас более удовлетворит, тем более, что по отъеданию памяти он не сильно прихотлив. А на второй вариант провайдер может пожелать Вам счастливого пути в известном направлении...мягко отбрив Вашу просьбу, с мотивировкой "по техническим причинам не возможно". :?

_________________
==============================
Вадим


Вернуться к началу
 Профиль  
 
 Заголовок сообщения:
Непрочитанное сообщениеДобавлено: 29/08/2006 21-29 
Белые штаны

Зарегистрирован: 02/08/2006 01-32
Сообщения: 61
Откуда: Нижний Новгород
Дмитрий, в каком смысле криво? Плохой стиль программирования? Но ведь главное - обеспечить возможность поиска, а стиль - дело второстепенное. Прием с массивами - один из самых популярных и, я бы сказал (как программист), стандартных в ситуациях подобного рода, когда программа не поддерживает символы национальных алфавитов.


Вернуться к началу
 Профиль  
 
 Заголовок сообщения:
Непрочитанное сообщениеДобавлено: 29/08/2006 22-17 
Жёлтые штаны

Зарегистрирован: 17/02/2006 11-41
Сообщения: 417
Откуда: малая арнаутская
зачем так извращаться если можно установить кодировку utf8 и collation соответствующий


Вернуться к началу
 Профиль  
 
 Заголовок сообщения:
Непрочитанное сообщениеДобавлено: 29/08/2006 23-39 
Зелёные штаны

Зарегистрирован: 23/06/2006 16-43
Сообщения: 163
Откуда: Санкт-Петербург
Victor Mikhailov писал(а):
зачем так извращаться если можно установить кодировку utf8 и collation соответствующий


По словам Дмитрия, это не помогает.

_________________
==============================
Вадим


Вернуться к началу
 Профиль  
 
 Заголовок сообщения: UTF8
Непрочитанное сообщениеДобавлено: 30/08/2006 01-06 
Господин ПЖ

Зарегистрирован: 01/01/1970 03-00
Сообщения: 1963
Откуда: Москва - Гродно - Бостон
Victor Mikhailov писал(а):
зачем так извращаться если можно установить кодировку utf8 и collation соответствующий

Всё так и сделано. Пока не помогает :(

_________________
Ваш Д.З.


Вернуться к началу
 Профиль  
 
Показать сообщения за:  Поле сортировки  
Начать новую тему Ответить на тему  [ Сообщений: 17 ] 

Часовой пояс: UTC + 3 часа


Кто сейчас на конференции

Сейчас этот форум просматривают: нет зарегистрированных пользователей и гости: 11


Вы не можете начинать темы
Вы не можете отвечать на сообщения
Вы не можете редактировать свои сообщения
Вы не можете удалять свои сообщения

Найти:
Перейти:  
TopList Создано на основе phpBB® Forum Software © phpBB Group
Русская поддержка phpBB