Foros del Web » Programando para Internet » PHP » Zend »

Recargar página después de enviar formulario

Estas en el tema de Recargar página después de enviar formulario en el foro de Zend en Foros del Web. Buenas, aquí vengo otra vez con mis problemas... Me ocurre lo siguiente: En una acción de uno de mis controladores, tengo lo que sería una ...
  #1 (permalink)  
Antiguo 16/06/2012, 06:24
Avatar de Lobito14  
Fecha de Ingreso: abril-2010
Mensajes: 222
Antigüedad: 13 años, 11 meses
Puntos: 17
Recargar página después de enviar formulario

Buenas, aquí vengo otra vez con mis problemas...

Me ocurre lo siguiente:

En una acción de uno de mis controladores, tengo lo que sería una parte de comentarios, entonces ahí muestro los comentarios que ya ahí, y abajo del todo un formulario que consta de un textarea y un botón de submit, para insertar nuevos comentarios. Todo perfecto.

Mi problema es que me interesa que una vez se envíe el formulario, se recarga esa misma página, para que el comentario que se acaba de insertar, se muestre en la lista con los otros comentarios.

He intentado con el helper redirect, y el url también, pero me deja en la misma página, con el textarea todavía relleno y sin mostrar el nuevo comentario en la lista de comentarios.

Espero haberme explicado.

A ver si pueden darme alguna solución.

Un saludo y gracias!!!!
  #2 (permalink)  
Antiguo 16/06/2012, 06:37
Avatar de masterpuppet
Software Craftsman
 
Fecha de Ingreso: enero-2008
Ubicación: Montevideo, Uruguay
Mensajes: 3.550
Antigüedad: 16 años, 2 meses
Puntos: 845
Respuesta: Recargar página después de enviar formulario

Habría que ver como lo estas haciendo porque no tiene mucha vuelta, no es mas que:

Código PHP:
Ver original
  1. ...
  2. if($request->isPost()
  3.        && $form->isValid($request->getPost())){
  4.    ...
  5.    $this->_redirect('/url');
  6. }
  7. ...
__________________
http://es.phptherightway.com/
thats us riders :)
  #3 (permalink)  
Antiguo 16/06/2012, 07:04
Avatar de Lobito14  
Fecha de Ingreso: abril-2010
Mensajes: 222
Antigüedad: 13 años, 11 meses
Puntos: 17
Respuesta: Recargar página después de enviar formulario

Gracias por contestar masterpuppet.

La cosa es que en la acción en la que estoy también lleva un par de parametros por GET en la URL, entonces estaba haciéndolo de la siguiente forma:

Código PHP:
Ver original
  1. $this-->redirect(array('controller'=>'event', 'action'=>'single', 'event'=>$id_event, 'user'=>$id_user));

Y no funcionaba, entonces he probado a hacerlo de esta forma:

Código PHP:
Ver original
  1. $this->_redirect('event/single/event/'.$id_event.'/user/'.$id_user);

Y parece ser que ahora si funciona, aunque no se si es la forma correcta de hacerlo.

Gracias :)
  #4 (permalink)  
Antiguo 16/06/2012, 07:15
Avatar de masterpuppet
Software Craftsman
 
Fecha de Ingreso: enero-2008
Ubicación: Montevideo, Uruguay
Mensajes: 3.550
Antigüedad: 16 años, 2 meses
Puntos: 845
Respuesta: Recargar página después de enviar formulario

Formas hay muchas pero si utilizas _redirect puedes pasar como segundo parámetro las opciones:

Código PHP:
Ver original
  1. $this->_redirect('/event/single', array('event' => $eventId, 'user' => $userId));

aunque personalmente haría algo así:

Código PHP:
Ver original
  1. $this->_helper->redirector->gotoSimpleAndExit('single', 'event', null, array('event' => $eventId, 'user' => $userId));
__________________
http://es.phptherightway.com/
thats us riders :)
  #5 (permalink)  
Antiguo 16/06/2012, 07:29
Avatar de Lobito14  
Fecha de Ingreso: abril-2010
Mensajes: 222
Antigüedad: 13 años, 11 meses
Puntos: 17
Respuesta: Recargar página después de enviar formulario

Gracias masterpuppet, va perfecto!! :)

Un saludo!

Etiquetas: page, reload, submit, formulario
Atención: Estás leyendo un tema que no tiene actividad desde hace más de 6 MESES, te recomendamos abrir un Nuevo tema en lugar de responder al actual.
Respuesta




La zona horaria es GMT -6. Ahora son las 15:07.