Он не вставляет никаких данных в мою базу данных mysql….. Я также вставил заполняемое поле в мою модель user

#php #laravel-5

#php #laravel-5

Вопрос:

защищенная функция create(array $ data) { $request = запрос();

     $profileImage = $request->file('image');
    $profileImageSaveAsName = time(). "." . $profileImage->getClientOriginalExtension();
    $profileImage->move('img', $profileImageSaveAsName);

    $user=new User;
    return $user->create([
        'name' => $data['name'],
        'email' => $data['email'],
        'password' => bcrypt($data['password']),
        'image' => $profileImageSaveAsName,
    ]);
}
  

Комментарии:

1. Получаете ли вы данные изображения, $request->file('image')? Т.Е. enctype="multipart/form-data" вы правильно добавили enctype к своему <form> элементу?

Ответ №1:

Убедитесь, что у вас есть <form enctype="multipart/form-data"> .


Кроме того, вы немного усложняете ситуацию при сохранении изображения. (На самом деле я считаю, что вы должны хранить в storage/app/public/images , а не public/images )

 $profileImage = $request->file('image');
$fileName = time() . Auth::id() . "-profile." . $profileImage->getClientOriginalExtension();

$path = $profileImage->storeAs('public/images', $fileName);
  

Чтобы это сработало, убедитесь, что вы выполнили команду symlink: php artisan storage:link

Ответ №2:

сначала проверьте, что вы добавляете в форму <form enctype="multipart/form-data">

и, во-вторых, вы не можете получить Auth::id() ,

поскольку пользователь не зарегистрирован, следовательно, сеанс не создан, тогда как вы можете получить id из Auth. вы также можете проверить с помощью dump и die dd(Auth::id) , это даст null.

И о проверке. я предполагаю, что вы забыли разместить <form enctype="multipart/form-data"> , а также проверить, что у вас такое же имя в поле ввода, которое находится в валидаторе.

Комментарии:

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

2. @MonisHussain пользователь создан?

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