我有一个上传文件的功能。在本地主机上,它没有错误。但是,在我部署到共享主机上之后,它就有了问题。如果本地主机,我不会移动一些文件夹,但在“教程”共享托管,我需要建立2个文件夹。拉勒维尔和公众。这个Laravel文件夹是在没有公共的Laravel项目中的所有文件。
这是我在共享主机上的模式
(/home/sippausr)
等
Laravel ->
- files ( this file saved here)
日志
邮件
public_ftp
public_html ->
我有一个函数来上传一个文件,并将这个文件保存到public_html上的目录文件中,如下所示
public function store6(Request $request) {
$this->validate($request, [
]);
if($request->hasfile('image')) {
$file = $request->file('image');
$name=$file->getClientOriginalName();
$file->move(public_path().'/files/', $name);
$data = $name;
}
$user = new pemeliharaan;
$id = Auth::user()->id;
$user->user_id = $id;
$user->alat_id = $request->alat_id;
$user->pertanyaan =json_encode($request->except
(['_token','name','alat_id','status','catatan','image']));
$user->catatan = $request->catatan;
$user->image=$data;
$user->status = $request->status;
$user->save();
// dd($user);
return redirect('user/show6')->with('success', 'Data Telah Terinput');
}
但是,这个文件没有在public_html/files
保存,
该文件保存在public_html上的Laravel文件夹中(您可以在模式中看到)。有人能帮我吗?
发布于 2021-05-18 05:07:31
使用下面的代码将文件保存到files
文件夹中的public
目录中。
use Illuminate\Support\Facades\Storage;
class YourClassName implements Contract {
public function store6(Request $request) {
$this->validate($request, [
]);
if($request->hasfile('image')) {
$file = $request->file('image');
$name=$file->getClientOriginalName();
Storage::putFileAs('public/files', $file, $name);
$data = $name;
}
$user = new pemeliharaan;
$id = Auth::user()->id;
$user->user_id = $id;
$user->alat_id = $request->alat_id;
$user->pertanyaan =json_encode($request->except
(['_token','name','alat_id','status','catatan','image']));
$user->catatan = $request->catatan;
$user->image=$data;
$user->status = $request->status;
$user->save();
return redirect('user/show6')->with('success', 'Data Telah Terinput');
}
}
https://stackoverflow.com/questions/67580043
复制相似问题