No meu código atual esta tudo funcionado a minha duvida e como posso passa outras formas de extensões de imagens que não seja "(.jpg)" ou como posso salvar essa extensão no banco de dados ou ate mesmo um link da imagem com esta solução alguém pode ajudar ? desde já obrigado.
Controller
public function postSaveAccount(Request $request)
{
$this->validate($request, [
'email' => 'required|email|max:100'
]);
$user = Auth::user();
$old_email = $user->email;
$user->email = $request['email'];
$user->update();
$file = $request->file('image');
$file_email = $request['email'] . '-' . $user->id . '.jpg';
$old_file_email = $old_email . '-' . $user->id . '.jpg';
$update = false;
if (Storage::disk('local')->has($old_file_email)) {
$old_file = Storage::disk('local')->get($old_file_email);
Storage::disk('local')->put($file_email, $old_file);
$update = true;
}
if ($file) {
Storage::disk('local')->put($file_email, File::get($file));
}
if ($update && $old_file_email !== $file_email) {
Storage::delete($old_file_email);
}
return redirect()->route('account');
}
public function getUserImage()
{
$user = Auth::user();
$image ="". $user->email . '-' . $user->id . '.jpg';
$file = Storage::disk('local')->get($image);
return Response::make($file,200,[ 'Content-Type' => 'image/jpeg']);
}
Route
Route::get('/account', [
'uses' => 'UserController@getAccount',
'as' => 'account'
]);
Route::post('/upateaccount', [
'uses' => 'UserController@postSaveAccount',
'as' => 'account.save'
]);
Route::get('/userimage', [
'uses' => 'UserController@getUserImage',
'as' => 'account.image'
]);
View
<img src="{{ route('account.image')}}">
Repository GitLab https://gitlab.com/ronnyere/imageUploadLaravel.git