我试图调整用户配置文件的图像大小,但我有这个错误:
Decoder.php第96行NotReadableException:无法从给定初始化二进制数据。
MY CONTROLLER
public function updateAvatar(Request $request){
if ($request->hasFile('image')) {
$user_id = Auth::user()->id . '.' . $request->file('image')->getClientOriginalExtension();
// if i insert here: retur $user_id it return: 1.jpg it work well,
// my form work well, before i tryed to upload without resize and it work well.
// i want save image uploaded with id user and extention
// here i'm tryng to resize it, i installed intervation and inserted class
$img = Image::make('images/users',$user_id);
$img->resize(100, 100);
$img->save('images/users',$user_id);
$user = new User;
$user->where('email', '=', Auth::user()->email)
->update(['image' => 'images/users/'.$user_id]);
return redirect('account')->with('message-success', 'Immagine profilo aggiornata con successo!');
}else{
return redirect('account')->with('message-error', 'File non trovato');
}
}
您试图为Image::make()
提供两个参数,但应该只给它一个。我想你可能会想用例Image::make('images/users/'.$user_id)
来代替?或者文件的完整路径
试试这个-我认为你试图从文本字符串创建图像,或者可能是不存在的东西。我的代码编辑器不在我的面前,所以我不能测试,告诉我你得到了什么?
public function updateAvatar(Request $request){
if ($request->hasFile('image')) {
$user_id = Auth::user()->id . '.' . $request->file('image')->getClientOriginalExtension();
$img = Image::make($request->file('image'));
$img->resize(100, 100);
$img->save('images/users',$user_id);
$user = new User;
$user->where('email', '=', Auth::user()->email)
->update(['image' => 'images/users/'.$user_id]);
return redirect('account')->with('message-success', 'Immagine profilo aggiornata con successo!');
} else{
return redirect('account')->with('message-error', 'File non trovato');
}
}
public function updateAvatar(Request $request){
if ($request->hasFile('image')) {
$user_id = Auth::user()->id . '.' . $request->file('image')->getClientOriginalExtension();
$base=base64_decode($request['image']);
$img = Image::make($base)->save($path);
$img->resize(100, 100);
$img->save('images/users',$user_id);
$user = new User;
$user->where('email', '=', Auth::user()->email)
->update(['image' => 'images/users/'.$user_id]);
return redirect('account')->with('message-success', 'Immagine profilo aggiornata con successo!');
} else{
return redirect('account')->with('message-error', 'File non trovato');
}
}
这肯定会解决你的问题。