我有一个控制器: -
function game_file($filename)
{
$file_path = base_url()."resources/games_application/$filename";
header('Content-Type: application/octet-stream');
header("Content-Disposition: attachment; filename=$filename");
ob_clean();
flush();
readfile($file_path);
redirect('downloads'); //This is not working
}
我的观点是: -
<a href='".base_url()."downloads/game_file/".$games_data['file_name']."'>Download<a/>
我可以下载文件,但问题是在下载后我想重定向到download
控制器。这仅下载我的文件,但在下载完成后不会重定向。我做错了吗?
编辑: - 我知道我无法重定向,因为标头已经发送,所以有人可以帮我解决这个问题吗?
答案 0 :(得分:2)
您提出的建议将从不工作。因为redirect()
是标题操作,您已经设置了标题。但这只是一个问题。
您无法设置文件的下载,然后将页面重定向到其他位置!需要重新思考你的过程。也许从主下载页面做一个javascript捕获'下载'动作。
但是...... redirect('downloads'); //This is not working
永远不会奏效。