Sql 将上载的文件url保存到数据库laravel 5.4
应该有一个简单的解决办法,但我找不到。所以,在文件上传到localhost/localdisk(我这样做是为了学习)之后,我想将其url(可以作为下载链接放在锚定标记中)保存到数据库中 控制器中的上载功能如下所示:Sql 将上载的文件url保存到数据库laravel 5.4,sql,laravel-5.4,laravel-filesystem,Sql,Laravel 5.4,Laravel Filesystem,应该有一个简单的解决办法,但我找不到。所以,在文件上传到localhost/localdisk(我这样做是为了学习)之后,我想将其url(可以作为下载链接放在锚定标记中)保存到数据库中 控制器中的上载功能如下所示: 公共函数存储(请求$Request){ 如果($request->hasFile('file')){ $filename=$request->file->getClientOriginalName(); $fileurl=$request->file->path(); $reque
公共函数存储(请求$Request){
如果($request->hasFile('file')){
$filename=$request->file->getClientOriginalName();
$fileurl=$request->file->path();
$request->file->storeAs('public/uploads',$filename);
$file=新文件();
$file->name=$request->name;
$file->description=$request->description;
$file->visible=$request->visible;
$file->file\u name=$filename;
$file->file\u url=$fileurl;
$file->save();
}否则{
返回视图('upload.files');
}
}
试试这个
public function store(Request $request){
$this->validate($request, [
'file' => 'required',
]);
$file = new File();
if ($request->hasFile('file')) {
$file = Input::file('file');
//getting timestamp
$timestamp = str_replace([' ', ':'], '-', Carbon::now()->toDateTimeString());
$file_name = $timestamp. '-' .$file->getClientOriginalName();
$file->move(public_path().'/public/uploaded/', $name);
}
$file->name = $request->name;
$file->description = $request->description;
$file->visible = $request->visible;
$file->file_name = $file_name;
$file->file_url = $file_name;
$file->save();
return view ('upload.files')->with('status', 'File uploaded Seccess');
}
}
你看到的是正确的Windows文件路径,大概是上传的文件。谢谢,上校:)我需要的是url,不是公共路径。。链接应启动localhost/。。不是c://…而只是将其更改为您的文件夹指定名称$file->move(public_path()。/public/upload/,$name);