#laravel-8 #image-upload
Вопрос:
Это код контроллера:
$player1QID = time().'.'.$request->player1_Id->extension();
$images1= $request->player1_Id->move(public_path('images'), $player1QID);
$player2QID = time().'.'.$request->player2_Id->extension();
$images2= $request->player2_Id->move(public_path('images'), $player2QID);
///это добавление в базу данных:
$registeredusers = Registrations::create([
'tournament_id' => $request->input('tournament_id'),
'player1_name' => $request->input('player1_name'),
'player1_email' => $request->input('player1_email'),
'player1_Id' => $player1QID,
'player1_gender' => $request->player1_gender,
'player1_phone' => $request->input('player1_phone'),
'player2_name' => $request->input('player2_name'),
'player2_email' => $request->input('player2_email'),
'player2_Id' => $player2QID,
'player2_gender' => $request->player2_gender,
'player2_phone' => $request->input('player2_phone'),
'category' => $request->category,
'status' => $request->input('status'),
]);
Это в поле зрения блейда:
Загрузить изображение 1 Загрузить изображение 2
Очень признателен, если кто-нибудь сможет помочь
Ответ №1:
сначала вы должны просмотреть свой запрос в Chrome, Firefox или чем бы вы ни пользовались, и проверить, что содержит ваш запрос, я имею в виду, отправляете ли вы изображения под разными именами, например:… player1_Id: player2_Id: … я думаю, конечно, отправляет так, потому что вы получаете его на своем контроллере. Затем попробуйте сохранить его с датой и временем в конце имени, например:
public function obtainImage(Request $request){
$image1=request('player1_Id');
$this->manageImage($image1);
$image2=request('player2_Id');
$this->manageImage($image2);
}
изображение управления публичной функцией($изображение){
$fileImageNameExtencion=$изображение->getClientOriginalName();
$fileName=pathInfo($fileImageNameExtencion, PATHINFO_FILENAME);
$fileExtencion=$image->getClientOriginalExtension();
$newFileName=$fileName."_".time().".".$fileExtencion;
$saveAs=$image->storeAs('public/images',$newFileName);
return $newFileName;
}
где $ newFileName-это то, что вам нужно сохранить в вашей базе данных
в противном случае вы можете сделать dd ($ player1QID. ‘-‘. $ player2QID) перед сохранением в базе данных и сравнением имен
Комментарии:
1. я попытался сделать это:dd ($ player1QID. ‘-‘. $ player2QID) ,,но у меня одно и то же имя для обоих изображений…в частности, второе имя изображения
2. я проверил с помощью dd()..после добавления вашей функции она получает разные имена изображений для хранения базы данных..но файлы не сохраняются в папке изображений
3. Спасибо вам, мистер Субхашис Пандей…. Я решил проблему не сохранения, добавив этот код:$request->player1_Id->>переместить(public_path («изображения»), $QID1); $request->>>player2_Id->>>>переместить(public_path(«изображения»), $QID2);