在cakephp 3中使用hidden或post参数重定向到另一个动作

时间:2016-09-18 09:41:10

标签: cakephp response.redirect cakephp-3.2

我在做cakephp 3.2

我必须将一个动作重定向到另一个动作以及一些数据。要传输的数据很大,变量也很敏感。

通过参数传递数据可以通过

实现
return $this->redirect(['controller' => 'MyController', 'action' => 'myAction', $param]);

但这会将网址设为

/my-controller/my-action/param

我不想在网址中显示param

有没有办法做到这一点?

1 个答案:

答案 0 :(得分:4)

  

有没有办法做到这一点?

您只需使用会话来存储数据。

E.g。在包含帖子数据的函数中:

$this->request->session()->write(
    'my-stuff', 
    $this->request->data
);
$this->redirect('/somewhere/else');

在需要该数据的函数中,将其从会话中读出:

$myStuff = $this->request->session()->read('my-stuff');
if (!$myStuff) {
    return $this->redirect('/start/point');
}
...