Php Zend framework:重定向到带有参数donsen';行不通

Php Zend framework:重定向到带有参数donsen';行不通,php,zend-framework,redirect,Php,Zend Framework,Redirect,我想用url发送参数,我尝试这两种方法 第一条路 return $this->_helper->redirector->gotoSimple('index','visit','visits',$params); 这边 $urlOptions = array('module' => 'visits', 'controller' => 'visit' , 'action' => 'index', 'page' => 'add');

我想用url发送参数,我尝试这两种方法

第一条路

return $this->_helper->redirector->gotoSimple('index','visit','visits',$params);
这边

$urlOptions = array('module' => 'visits', 'controller' => 'visit'
            , 'action' => 'index', 'page' => 'add');

 $this->_helper->redirector->gotoRoute($urlOptions);
url变成这样

 http://localhost/zendApps/InspectionSys/public/visits/visit/index/page/add
但是重定向到默认页面而不是添加页面

$this->_helper->redirector('index', 'visit', 'visits', array('page' => 'add'));
您需要将参数传递到数组中。这样,你可以通过任意多个页面。

我不清楚“添加”页面是什么。如果它是
VisitController
中的
addAction()
,则需要:

$this->_helper->redirector('add', 'visit', 'visits');

如果“添加”页面是
VisitController
indexAction()
中的一个变体,那么您需要阅读
页面
参数,并在操作中执行一些不同的操作。

好的,我想这篇文章很老了,但我还是想回答一下。我也有同样的问题,我意识到我的问题是如何设置我的动作。起初我有这样的想法:

<form action="user/add" method="post">

然后我把它改成这个,问题就解决了:

<form action="<?php echo $this->url(array('controller'=>'user', 'action'=>'add')) ?>" method="post">

你确定吗?你只使用“重定向器”吗?删除“gotoSimple”!这里工作~~是的,我试过了,但它不起作用,我想知道是否有任何配置我应该添加到application.ini以进行路由?当然,您需要默认路由。不推荐在那里乱搞。你能告诉我应该在application.ini中添加什么吗?很高兴知道我在系统中有3个模块!
page
是一个变量还是
page
是您试图导航到的另一个网页?如果要传递的
page
是一个变量,请将其放入数组中,并在一天内调用它。如果
page
是您试图导航到的网页,则完全不正确。调用
页面
作为控制器中的操作,或者使用
$this->\u重定向器(“url/to/page”)调用
页面
作为url
@RockyFord:建议在行中添加一个
返回值
。我曾经遇到过这样的问题,重定向不能正常工作。行应该是:
return$this->getHelper('redirector')->gotour('/url/to/page')
\u重定向器
getHelper('redirector')
是不同的方法。至于
return
这件事,是谁推荐的?在什么情况下?我在哪里可以查看文档。我真的很想知道。添加页面是添加访问信息的页面,我想将显示添加过程成功或失败的结果返回到添加页面,我也尝试了redirectr方法,但它也不起作用,我怀疑这是配置问题!如果实际为`/zendApps/InspectionSys/public/visions/visit/index/page/add`,则重定向工作正常,它应该在VisitController中显示indexAction()的输出。