Ver Mensaje Individual
  #1 (permalink)  
Antiguo 04/10/2012, 04:11
miwelillo
 
Fecha de Ingreso: junio-2008
Mensajes: 175
Antigüedad: 15 años, 9 meses
Puntos: 11
Pasar parametros a un formulario ya instanciado

Hola a todos,

Vereis, tengo un formulario en el que me gustaria comprobar si se ha declarado un parametro, en caso de que dicho parametro haya sido declarado se lo quiero pasar de nuevo al formulario pero sin tener que instanciarlo de nuevo para poder ejecutar una accion u otra pero de forma que me mantenga los valores que habia introducido el usuario anteriormente.

La idea es hacer algo asi:

Código PHP:
public function miAction(){
   
$form = new Application_Form_miformulario();
   if(
$this->_request->isPost()){
      if(
$form->isValid($this->_getAllParams())){
          
// ejecuto lo que sea
      
}
      else{
         if(
$_POST['parametro']){
         
// vuelvo a mostrar el formulario con la informacion que ha introducido 
         //el usuario pero pasandole el parametro 
         
}
      }
   }
   else{
     
// muestro el formulario a mi view
   
}

y el formulario seria algo asi:

Código PHP:
class Application_Form_miformulario extends Zend_Form{
   private 
$parametro $_POST['parametro']; // esto obviamente no seria asi
   
public function init(){
         if(
$parametro){
              
// hago lo que sea
         
}
         else{
              
// hago lo que sea
         

   }

No se si se entiende lo que quiero hacer. La idea es que si el formulario no es valido, se vuelva a mostrar el mismo formulario con la informacion que ha instroducido el usuario pero cambiando un campo en funcion de ese parametro que haya introducido el usuario anteriormente.
No me interesa volver a instanciar el formulario, ya que si no se perderia toda la informacion que ha introducido el usuario anteriormente.
¿Alguien sabria como hacerlo?