如何使用POST方法添加和发送数据两个动作?

时间:2016-09-21 20:33:46

标签: php symfony-1.4

我正在研究symfony 1.4,我有一个indexSucces文件,我在其中显示一个表单,这个表单有文本框,您可以在其中输入数据并具有两个选项的组合。如果用户选择选项1并单击按钮,则数据被发送到accion 1,如果用户选择选项2,则数据被发送到accion 2.但是除了用户提供的数据之外,还必须发送其他数据。 这是indexSuccess的代码

 <form method="post">
<?php echo $form['textfield']->render();  ?>
<?php echo $form['combo_options']->render();?>
 <input type="submit" value="enviar" name="enviar"/>
</form>

这是actions.class.php的代码

public function executeIndex(sfWebRequest $request){

$this->form=new FormularioForm();

 if($request->isMethod('post')){

 if($request->getPostParameter('enviar')){

  $data=$request->getParameter('textfield');

  $option=$request->getParameter('combo_options');

if($option=='1'){

$data_extra=array(1,2,3,4,5);

//How with the post method to send the $data and $data_extra to the next action1?

$this->redirect(aplication/action1);

}else{

$data_extra=array(8,9,7,5);

//the same here

$this->redirect(aplication/action2);
}}}

public function executeAction1(sfWebRequest $request){
//Here I receive the data sent with $ request-> getParameter ()
}

1 个答案:

答案 0 :(得分:0)

我建议您将额外数据存储在用户会话中,例如:

// Store data in the user session
$this->getUser()->setAttribute('extra_data', $extra_data);

$this->redirect(...);
}}}

public function executeAction1(sfWebRequest $request){

// Retrieve data from the user session with a default value
$extra_data = $this->getUser()->getAttribute('extra_data', array('no elem'));

}

更多信息here

希望这个帮助