使用请求下载cakephp2后,如何重定向到另一个页面

时间:2016-07-27 05:19:18

标签: php cakephp

我想通过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'));

但效果不佳。这是另一种方式吗?谢谢

2 个答案:

答案 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';