Jump to content
Дизайн и модификация IPS Community IPBSkinsBETA
Search In
  • More options...
Find results that contain...
Find results in...
Sign in to follow this  
smalkin

Некоторые пользователи не могут залогиниться

Recommended Posts

Нужно не только менять кодировку но и перекодировать данные которые хранятся там.

Share this post


Link to post
Share on other sites

Переконвертировал все таблицы в utf8, скопировал значения как советовали выше. Но скопировал без функции LOWER. Все стало как нужно но естественно с заглавной буквы логины остались. Теперь если сделать выборку с LOWER то все квадратиками. Получается эта функция как-то портит или меняет кодировку. Уже не знаю что и придумать.

Share this post


Link to post
Share on other sites

Сделал, в точности как в этом посте, ничего не изменилось ((( Кодировка логина с кириллицей все равно не меняется :(

 

IPB 3.4.9.

 

373925d9ea12dd6618e9a5852f4643dd.png

Share this post


Link to post
Share on other sites

На этом скрине никаких проблем с кодировкой нету. Значение из members_seo_name используется в url'е, поэтому не ascii символы кодируются. Туда смотреть не нужно.

 

В conf_global.php указана кодировка подключения к mysql серверу - sql_charset?

  • Upvote 1

Share this post


Link to post
Share on other sites

Ой, пропустил этот момент - прописал кодировку, заработало!!! Спасибо огромное!!!

 

Кстати, я посмотрел, как реализована поддержка русских логинов в русифицированном релизе IPB 3.4.6 от мафии - там strtolower во многих местах заменен на IPSText::mbstrtolower, и в таблице базы данных в поле "members_seo_name" используется транслит, вот, посмотрите:

 

http://i77.fastpic.ru/big/2016/0421/88/c0461bd9e82ef8c64f7e241176428588.png

 

Как они это реализовали?

Share this post


Link to post
Share on other sites
и в таблице базы данных в поле "members_seo_name" используется транслит,

Это не поддержка русских логинов, а транслит имен используемых в url'ах. Никакое отношение к правильной работе логинов это не имеет. Значение имеет strtolower, которая является однобайтовой функции и при не правильной установки локали она не работает с кириллицей в utf8, поэтому ее заменяют на многобайтовый аналог mb_strtolower. В форуме для этого используется функция обертка IPSText::mbstrtolower.

  • Upvote 1

Share this post


Link to post
Share on other sites

Ого. А чтобы мне поддержку транслита добавить, вот этот хук подойдет?

http://ipbskins.ru/forum/topic11558.html

 

Вам просто огромнейшее спасибо за помощь!!! Жаль у меня на сегодня закончилась возможность повышения репы...

Share this post


Link to post
Share on other sites

Да. Но у него к сожалению есть одна проблема, он не поддерживает sitemap.xml.

Share this post


Link to post
Share on other sites

Ну ладно тогда, пока обойдусь без транслита :)

 

Вам еще раз просто огромное спасибо, выручили!

 

P.S. - а в релизе 3.4.6 от мафии, насколько я понял, этот хук вшит? Или там другой способ используется?

Share this post


Link to post
Share on other sites

В локализациях от IBR транслитерация была встроенная.

  • Upvote 1

Share this post


Link to post
Share on other sites

Что-то совсем не отвязывается от меня эта проблема.. Обнаружил, что не работает поиск по логинам на кириллице через строку быстрого поиска (который в шапке форума), работает только через расширенный поиск :(

 

Все действия по модифицированию файлов из поста №11 сделаны в точности, проверил. Где закопана эта последняя (надеюсь) соб@ка?

Share this post


Link to post
Share on other sites

Upd. - Прошу прощения за беспокойство. Оказывается, не работает в принципе этот самый быстрый поиск, логины тут ни при чем. Буду разбираться)

 

Хотя нет, действительно не работает поиск по пользователям на кириллице... По нику "Strategius" находит, а по "Инфобот", пишет - результатов нет...

Edited by benix97

Share this post


Link to post
Share on other sites

Помогите решить эту проблему, пожалуйста... Всей душой надеюсь, что это последний косяк такой...

Share this post


Link to post
Share on other sites

Вы собираетесь хостится на windows или основное место работы форума это локалхост? Ставьте на нормальном хостинге и установите правильную локаль для работы с utf-8.

Share this post


Link to post
Share on other sites

Пока да, локалхост... - я просто сейчас еще только делаю форум, создаю стиль, настраиваю функционал и т.п. на домашнем компьютере, на нем Windows конечно...

 

Просто подумал, если поиск (строка поиска, которая наверху форума) работает сейчас только по латинским логинам, а с кириллицей нет, то может быть где-то еще "strtolower" на "mb_strtolower" нужно заменить?

P.S. - создал 2 тестовых пользователя - с латинским и русским логинами. Через быстрый поиск пользователь с латинским ником находится без проблем, а по запросу пользователя с русским ником выдает 0 результатов поиска...

Share this post


Link to post
Share on other sites

Create an account or sign in to comment

You need to be a member in order to leave a comment

Create an account

Sign up for a new account in our community. It's easy!

Register a new account

Sign in

Already have an account? Sign in here.

Sign In Now
Sign in to follow this  

  • Recently Browsing   0 members

    No registered users viewing this page.

×
×
  • Create New...