Laravel Как правильно отобразить кириллицу?

sharomet

Новичок
Всем привет.
Такая проблема - при отправки формы регистрации на сайте в laravel , вместо кириллици подставляет символы.
В app.php кругом стоит "ru" русский

Роутер:
Route::resource('users', 'UsersController', ['only' => ['create', 'store']]);

Контроллер:
$data= $request->only('fname', 'email', 'password');//Александр, [email protected], 123
return $data;

В итоге получается:
{"name":"\u0410\u043b\u0435\u043a\u0441\u0430\u043d\u0434\u0440","email":'[email protected]","password":"123"}

Как это исправить?
Спасибо
 

sharomet

Новичок
Спасибо. Я знаю что это правильно но в базу данных я не магу это добавить, база пустая после отправки, все поля где должна быть кириллица ничего нет...
\u0410\u043b\u0435\u043a\u0441\u0430\u043d\u0434\u0440 - не попадает в базу.
 

WMix

герр M:)ller
Партнер клуба
так проблема в добавлении в базу а не а json
 

artoodetoo

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

сообщения об ошибках должны помочь разобраться.
 

sharomet

Новичок
$data= $request->only('name', 'email', 'password');
$user = User::create($data);
if($user){
\Auth::login($user);
return redirect()->route('home');
}
return redirect()->withInput();
А если я воспользуюсь функцией json_encode()
Будет ли это правильно?
типа такого json_encode($data,JSON_UNESCAPED_UNICODE)

ТОлько ошибка выпадает(((

Argument 1 passed to Illuminate\Database\Eloquent\Model::create() must be of the type array, object given, called in E:\app\Http\Controllers\UsersController.php on line 45 and defined
 
Последнее редактирование:

Alexey Mezenin

Новичок
Ты уверен, что именно этот код дает ошибку? Метод only() возвращает массив, поэтому такой ошибки быть явно не должно.

А по поводу того, что не сохраняются данные - проверь $fillable модели (т.к. используешь Mass Assignment), должно быть что-то вроде:

Код:
$fillable = ['name', 'email', 'password'];
 

sharomet

Новичок
$fillable = ['name', 'email', 'password'];

Спасибо. вы решили проблему)
 
Последнее редактирование:
Сверху