我面临一个问题,我想在下载图像后保存数据。我的图像已成功下载,之后我想保留下载的历史记录。这是我的功能: -
enter code here
public function UserImageDownlaod($userid=null,$imageid=null){
$imagedata = DB::table('alt_images')->where('id',$imageid)->first();
$imagedata = json_decode(json_encode($imagedata),true);
$destination = 'images/ContributorImages'.'/';
$pathToFile = $destination.$imagedata['img'];
return response()->download($pathToFile);
//Now i want to save the history of downloaded images
$history= new DownloadHistory;
$history->user_id = Auth::user()->id;
$history->alt_image_id = $imageid;
$history->save();
}
现在你可以看到返回响应() - >下载($ pathToFile)行后我要保存历史数据。我想当用户点击OK按钮然后数据将保存在历史表中。谁能帮我。
答案 0 :(得分:0)
您向我们展示的弹出窗口来自浏览器。此时,您会看到此弹出窗口,浏览器可能已经开始在后台下载该文件。由于这是您的浏览器的一部分,并且您没有关于按下确定/取消的任何回调,因此没有直接的方法来确定用户做了什么。
一个简单的解决方法是,在javascript中向用户显示一个警告框,并询问他是否真的要下载该文件。
<a href="{{ action(...) }}" onclick="confirm('are you sure?')">Download</a>