Забыли пароль?
Запросите новый здесь.

Автор темы: BolkS
ID темы: 662
Информация:
Тема содержит 57 сообщения, была просмотрена 19451 раз.  Имеются прикрепленные файлы.
Просмотр темы
PHP-Fusion Russia » Поддержка 7 версии » Моды
 Распечатать тему
Разрешаем регистрацию русских ников v7.02.
Polarfox
me shocked ai
Это должно было начаться когда нить - конец света...
Всегда делайте backup перед изменениями | Указывайте свою версию в подписи/профиле. | Вся бесплатная тех. поддержка только на форуме
 
BolkS
jikaka написал:

BolkS, не надо нервничать!
буду по свободнее обязательно напишу в фак

Буду ждать.
 
Web
BolkS
Нам год! Принимаем поздравления!
Поздравляю!

Лучший форум техподдержки!
А как насчет русских ников? Наверное вся техподдержка отдыхает на море...by
/нужен загорелый смайлик в ластах и маске/
 
Web
dark
Я же давал ссылку в этой теме. Что-то разве не пашет?
 
yury
да, забавно и хорошо - замена всего одной строки и регистрация с русскими никами теперь доступна
 
BolkS
dark написал:

Я же давал ссылку в этой теме. Что-то разве не пашет?

А если бы пахало, стал бы я по пустякам тревожить?
Создал юзера с русским ником. Написал ему приватное сообщение, а письмо не прошло. Создал юзера с латинскими буквами - письмо прошло. Сделал массовую рассылку - письма получили только юзеры с никами на латыни.
Найти юзера с русским ником невозможно, сортировка не работает по кириллице, только тыкать наугад.
Всего и не упомню...
v7.02.06
 
Web
yury
поиск работает, отправка сообщения тоже. авторизация и регистрация работает.
 
BolkS
yury написал:

поиск работает, отправка сообщения тоже. авторизация и регистрация работает.

Поздравляю!
Если работает, то напиши пожалуйста как сделал. Только не надо посылать к сообщениям где написано - а попробуй вот так, я сам не пробовал, а вдруг получится...
v7.02.06
 
Web
yury
includes/classes/UserFieldsInput.class.php

находим
Скачать исходники  Код
if (!preg_check("/^[-0-9A-Z_@\s]+$/i", $this->_userName)) {




и заменяем на
Скачать исходники  Код
if (!preg_check("/^[-0-9A-ZА-Я_@s]+$/i", $this->_userName)) {


 
Markant
Сделал как написано выше, но ничего не выходит, в хостинге или бд не может быть проблемы, а то в денвере все срослось

Поправочка: заглавными буквами все получается. Маленькими нет. пробовал дописать а-я. толку не дало.
Изменил(а) Markant, 01.09.2011 17:56
 
dark
Заглавными писать не нужно там же есть модификатор i какой игнорирует регистр. Проверьте установлена на хостинге русская локаль, примеру создав файлик с содержимым и запустив его:

Скачать исходники  Код
<?
$str= array();
$s = 192;
for ($i=1;$i<65;$i++) {
    $str[$i] = chr($s);
$s++;
}
$str[65] = chr(168);
$str[66] = chr(184);
print setlocale(LC_ALL,"ru_RU.CP1251").'<br>';
for ($i=1;$i<67;$i++) {
    echo preg_match("/^[_0-9A-Za-zА-Яа-яЁё]+$/", $str[$i]).'<br>';
    echo $str[$i].'<br>';
}
?>


 
Markant
файлик создал, все выдало нормально(так понимаю должны быть русские буквы сначала прописные, потом строчные)

ник например User создается спокойно. АДМИНИСТРАТОР также, а вот Администратор уже нет.

суть проблемы такова.

сам сайт пока на бесплатной ayola висит.

вот что написано в файле UserFieldsInput.class.php
Скачать исходники  Код
private function _settUserName() {
      global $locale;
      $this->_userName = isset($_POST['user_name']) ? stripinput(trim(preg_replace("/ +/i", " ", $_POST['user_name']))) : "";

      if ($this->_userName != "" && $this->_userName != $this->userData['user_name']) {
         if (!preg_check("/^[-0-9A-ZА-Я_@s]+$/i", $this->_userName)) {
            $this->_setError("user_name", $locale['u120']);
         } else {
            $name_active = dbcount("(user_id)", DB_USERS, "user_name='".$this->_userName."'");
            $name_inactive = dbcount("(user_code)", DB_NEW_USERS, "user_name='".$this->_userName."'");
            if ($name_active == 0 && $name_inactive == 0) {
               $this->_userLogFields[] = "user_name";
               $this->_setDBValue("user_name", $this->_userName);
            } else {
               $this->_setError("user_name", $locale['u121']);
            }
         }
      } else {
         $this->_setError("user_name", $locale['u122'], true);
      }
   }


 
Markant
Ребят проблема это или руки мои кривые? Кто скажет???
 
jikaka
Markant, какая версия движка?
 
Web
AlexALX
Попробуй строку
Скачать исходники  Код
 if (!preg_check("/^[-0-9A-ZА-Яа-я_@s]+$/i", $this->_userName)) {




Иногда бывает так что флаг "i" (игнорировать регистр) не работает с некоторыми языками (всё зависит от настроек хостинга).
 
Web
Polarfox
А вроде еще пишут типа А-я что-то или это только к латыни.
Всегда делайте backup перед изменениями | Указывайте свою версию в подписи/профиле. | Вся бесплатная тех. поддержка только на форуме
 
Markant
jikaka, 7.02.03

AlexALX, не сработало

Psc, сработало. Спасибо огромное, как сам не догадался!!!
 
jikaka
Markant, в итоге какой окончательный вариант?
 
Web
Markant
Скачать исходники  Код
if (!preg_check("/^[-0-9A-ZА-я_@s]+$/i", $this->_userName)) {


x1 x3
 
lucky
а как в поиск добавить русский алфавит? в версии 7.02.05,

я попробовал сделать аналогично как здесь => http://rusfusion....ead_id=108 но у меня даже русские буквы не появились
lucky присоединено следующее:изображение:
2501-search.png
 

Поделиться этой темой
Социальные закладки: Vkontakte Odnoklassniki Mail.ru Facebook Google Tweet This
URL:
BBcode:
HTML:

Перейти на форум:
Похожие темы
Темы Форум Ответов / Просмотров Последние сообщения
В базе Mysql вместо русских букв отображаются ????  →  MySQL 2 / 8140 15.11.2016 11:32
Как разрешить регистрацию с русскими никами?  →  FAQ 10 / 8479 11.12.2013 21:37
Отмодить регистрацию. Пример  →  Моды 13 / 1895 12.02.2011 12:39
Топ 5 пользователей форума
Alex Alex (1,246)   Zaxap Zaxap (1,090)   Vova Vova (877)   Pisatel Pisatel (678)   util util (666)