我想通过cakephp 2使用$this->response->download;
后问一个问题如何重定向到另一个页面。我已经使用过:
$this->response->download($new_file_name);
print($output);
$this->Flash->success(__('The file has been successfully export.'));
return $this->redirect(array('action' => 'index'));
但效果不佳。这是另一种方式吗?谢谢
答案 0 :(得分:2)
这是不可能的,它是浏览器请求工作方式的限制。您可以在this answer中找到更多信息。
常见的事情(例如在流行的下载网站中)是相反的:首先,您转到“之后”页面然后开始下载。
因此,将用户重定向到您希望他们结束的位置,然后提供下载。
答案 1 :(得分:0)
试试这个,但不确定是否会奏效。
$download='no';
$this->response->download($new_file_name);
print($output);
$download='yes';
if($download=='yes')
{
return $this->redirect(array('action' => 'index'));
}
else
echo 'sorry did not downloaded';