Ошибка «Попытка получить доступ к смещению массива по значению типа null» laravel 5.8.26 Php 7.4.2 - PullRequest
2 голосов
/ 12 февраля 2020

Я использую приведенную ниже функцию для вставки / создания нового пользователя из панели администратора:

public function store(Request $request)
{
    $this->validate($request, [
        'name' => 'required',
        'email' => 'required|email|unique:users,email',
        'password' => 'required|same:confirm-password'
    ]);


    $input = $request->all();
    $input['password'] = Hash::make($input['password']);


    User::create($input);

    return redirect()->route('admin.pages.users.index')
        ->with('success','User created successfully');
}

при отправке я получаю сообщение об ошибке, как показано ниже: -

Пытаясь получить доступ к смещению массива на значение типа null

РЕДАКТИРОВАТЬ: Я нашел свою проблему. Моя проблема в правиле проверки электронной почты. когда я удаляю данные проверки вставки электронной почты, это правда.

enter image description here

Как мне исправить эту ошибку!

Ответы [ 3 ]

0 голосов
/ 12 февраля 2020

Попробуйте это Надеюсь, это поможет Вам

public function store(Request $request)
{
    $this->validate($request, [
        'name' => 'required',
        'email' => 'required|email|unique:users,email',
        'password' => 'required|same:confirm-password'
    ]);


    $insert_array = [
                'name' => $request->name,
                'email' => $request->email,
                'password' => Hash::make($request->password)
            ];

    User::create($insert_array );

    return redirect()->route('admin.pages.users.index')
        ->with('success','User created successfully');
}
0 голосов
/ 06 апреля 2020

Я столкнулся с той же проблемой при использовании laravel версии 5.8. * И php версии 7.4. Я решил эту проблему обновлением composer. просто используйте эту команду php composer.phar update и исправьте мою проблему.

0 голосов
/ 12 февраля 2020

Попробуйте это:

public function store(Request $request)
{
    $this->validate($request, [
        'name' => 'required',
        'email' => 'required|email|unique:users,email',
        'password' => 'required'
    ]);

    $user = new User;
    $user->name = $request->name;
    $user->email = $request->email;
    $user->password = Hash::make($request->password);
    $user->save();

    return redirect()->route('admin.pages.users.index')
    ->with('success','User created successfully');
}
...