使用avatar laravel更新用户帐户时出现问题
因此,我能够提交表格,允许上传和更改一个头像,这很有效。现在我正在尝试允许所有的用户详细信息也被更新 如果我只是尝试更改用户名或电子邮件并提交,页面将重新加载原始内容。当我上传一个新的头像,然后尝试提交时,我得到了一个错误“非静态方法\Http\Request::input()不应该被静态调用” *编辑***我刚刚意识到我说如果用户上传一张图片,然后更新表单。然而,我想提交的形式是否有一个图像已上传。我如何更改我的update_avatar功能以使其正常工作 web.php使用avatar laravel更新用户帐户时出现问题,laravel,laravel-5,Laravel,Laravel 5,因此,我能够提交表格,允许上传和更改一个头像,这很有效。现在我正在尝试允许所有的用户详细信息也被更新 如果我只是尝试更改用户名或电子邮件并提交,页面将重新加载原始内容。当我上传一个新的头像,然后尝试提交时,我得到了一个错误“非静态方法\Http\Request::input()不应该被静态调用” *编辑***我刚刚意识到我说如果用户上传一张图片,然后更新表单。然而,我想提交的形式是否有一个图像已上传。我如何更改我的update_avatar功能以使其正常工作 web.php Route::get
Route::get('profile','userController@profile');
Route::post('profile', 'userController@update_avatar');
用户控制器
<?php
namespace App\Http\Controllers;
use Illuminate\Http\Request;
use Auth;
use Image;
class UserController extends Controller
{
//
public function profile()
{
return view('profile', array('user' => Auth::user()) );
}
public function update_avatar(Request $request)
{
if($request->hasFile('avatar')){
$avatar = $request->file('avatar');
$filename = time() . '.' . $avatar->getClientOriginalExtension();
Image::make($avatar)->resize(300,300)->save( public_path('/uploads/avatars/' . $filename) );
$user = Auth::user();
$user->avatar = $filename;
$user->name = Request::input('username');
$user->email = Request::input('email');
$user->save();
}
return view('profile', array('user' => Auth::user()) );
}
}
更改代码
$user->name = $request->input('username');
$user->email = $request->input('email');
有关更多信息,请参阅文档:
在控制器中命名空间声明的顶部,
替换以下内容:
use Illuminate\Http\Request;
到
然后我得到错误名称空间声明语句必须是第一个语句,或者在脚本中的任何声明调用之后请更详细地说明…共享屏幕shotOn submit我得到错误“调用未定义的方法illumb\Support\Facades\Request::hasFile()”@akram
use Illuminate\Http\Request;
use Request;