@frmax
человек

Почему контроллер не сохраняет кирилицу?

Привет еще раз,

значит прописал rules и регулярку
return [
            ['username', 'filter', 'filter' => 'trim'],
            ['username', 'required'],
            ['username', 'match', 'pattern' => '#^[\w_-А-Яа-я\.]+$#i'],
            ['username', 'string', 'min' => 2, 'max' => 255],


Отправилось в контроллер
Но save не проходит...
Я так понимаю проблема тут

public function signup()
    {
        if ($this->validate()) {
            $user = new User();
            $user->username = $this->username;
            $user->lastname = $this->lastname;
      //...
 
            if ($user->save()) {
             // .....
            }
            return $user;
        }
 
        return null;
    }
  • Вопрос задан
  • 230 просмотров
Решения вопроса 1
abler98
@abler98
Software Engineer
Ну у тебя как минимум есть ошибка в регулярке. Во-первых дефис нужно экранировать, если это не диапазон. Во-вторых \w уже содержит русский алфавит и знак подчеркивания, вроде )
Ответ написан
Пригласить эксперта
Ответы на вопрос 2
@frmax Автор вопроса
человек
Проверил,
конекшен к БД,
таблицу в БД каждое поле,
файлы тоже проверил - utf8
['username', 'match', 'pattern' => '#^[\w_-А-Яа-я\.]+$#ui'],


Вот, но все равно - сохранение не проходит, точнее и ошибку не выдает "типа сохраняет" смотрю в БД а записи нет. Как только меняю на EN все сохраняет. Это потому что пт 13е чтоли?
Ответ написан
Комментировать
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Войти через центр авторизации
Похожие вопросы