当我在本地主机上传图像时,一切正常。现在,当我将我的网站上传到服务器上图像上传时,在数据库中显示:/tmp/phptDVxoK
这是我的控制器代码:
public function themeStore(ThemeRequest $request)
{
$theme = Theme::create($request->all());
$theme->slug = str_slug($theme->title);
if(Input::hasfile('image'))
{
$request->file('image')->move(public_path('images/themes/'), $request->file('image')->getClientOriginalName());
$theme->image = 'images/themes/' . $request->file('image')->getClientOriginalName();
}
Auth::user()->theme()->save($theme);
$theme->category()->attach($request->input('categories_list'));
flash()->success('Dizainas buvo sėkmingai patalpintas į dizainų parduotuvę.');
return redirect('/');
}
有人知道解决方案吗?
答案 0 :(得分:0)
我不知道为什么你同时使用Input
和$request
,但我在postman中进行了测试,Input
可以获得价值,但$request
不能和相反(取决于输入类型:json,text,..)。
如果此条件if(Input::hasfile('image'))
返回true
,请更改语法:
{
Input::file('image')->move(public_path('images/themes/'), Input::file('image')->getClientOriginalName());
$theme->image = 'images/themes/' . Input::file('image')->getClientOriginalName();
}
或使用hasFile
$request
if ($request->hasFile('image')) {}
查看更多here。