Foros del Web » Programando para Internet » PHP »

Form que se procesa en la misma pagina. Util?

Estas en el tema de Form que se procesa en la misma pagina. Util? en el foro de PHP en Foros del Web. Hola a [email protected]! Quisiera saber si hay alguna utilidad en el hecho de procesar un formulario en la misma pàgina en la que está dicho ...
  #1 (permalink)  
Antiguo 16/07/2002, 11:24
 
Fecha de Ingreso: febrero-2002
Mensajes: 64
Antigüedad: 15 años, 10 meses
Puntos: 0
Form que se procesa en la misma pagina. Util?

Hola a [email protected]!

Quisiera saber si hay alguna utilidad en el hecho de procesar un formulario en la misma pàgina en la que está dicho formulario. O si por el contrario, sirve exactamente igual hacer que el formulario esté en un pagina.html y se procese el action en otrapagina.php.

No veo ninguna necesidad para que esté todo en la misma página y en cambio me crea un pequeño problema de compatibilidad con un javascript. Este problema ya lo describí en un mensaje anterior:<a href='ir.asp?http://www.forosdelweb.com/mensaje.asp?id=89553' target='_blank'>http://www.forosdelweb.com/mensaje.asp?i...</a>
y la única solución que me dieron fué usar dos páginas, con lo que evito el error, pero ahora mi duda es si voy a tener algún problema por hacer este cambio.

Mirando otros mensajes me he dado cuenta que esta técnica (la de poner el action que llama a la misma página) la usa mucha gente, pero no entiendo exactamente el por qué.

Por favor, alguna alma caritativa que pueda darme una razón o simplemente responder que no tiene ningún valor añadido. Son muchos los archivos que tengo que cambiar y no me gustaría que para salvar un pequeño problema, me dé cuenta después que era mucho mejor hacerlo como lo tenía, en este caso tendré que seguir investigando como resolver el error que especifiqué en el otro post (que por no duplicar el mensaje, no comento aquí)

Muchas gracias por vuestra colaboración.

Salu2
Mònica J.M.
  #2 (permalink)  
Antiguo 16/07/2002, 12:21
O_O
 
Fecha de Ingreso: enero-2002
Ubicación: Santiago - Chile
Mensajes: 34.417
Antigüedad: 15 años, 11 meses
Puntos: 126
Re: Form que se procesa en la misma pagina. Util?

Bajo mi punto de vista ..

Da igual si usas un fichero aparte que procese los datos de un formulario o si mismo (a base de if .. accion= ver formulario .. hacer tal cosa ...).

Eso si, en ambos casos .. tras el proceso del formulario este deberia redireccionar (ejemplo header(&quot;location: talpagina o si misma con otro accion=&quot;); ) a una pagina de &quot;ok&quot; o al estado anterior ..
He visto mucho codigo que envian los datos a una pagina ejemplo: procesa.php .. y ahi dejan un boton/enlace tipo &quot;volver a la pagina anterior&quot; .. o ahi mismo dan el error si lo hay ... Ocurriendo en el primer caso que si recargan la pagina otra vez (el procesa.php) los datos se vuelven a enviar .. cosa que evitamos si al terminar el proceso lo redireccionamos automaticamente hacia donde corresponda.

Un saludo,
  #3 (permalink)  
Antiguo 16/07/2002, 12:58
 
Fecha de Ingreso: febrero-2002
Mensajes: 64
Antigüedad: 15 años, 10 meses
Puntos: 0
Re: Form que se procesa en la misma pagina. Util?

Muchísimas gracias Cluster!!!

No había pensado en la redirección, y efectivamente tenía el problema que has descrito y ni me había dado cuenta.

Con tu indicación lo soluciono todo de un tiro: salvo el problema del javascript, no tengo que rehacer un montón de páginas (con solo unos retoques bastará) y además tengo en cuenta el tema de la duplicidad de datos.

Te lo repito: muchísimas gracias. Has sido mi salvación

Salu2
Mònica J.M.
  #4 (permalink)  
Antiguo 16/07/2002, 13:14
Avatar de CHuLoSoY  
Fecha de Ingreso: febrero-2002
Ubicación: Ribeira (Galicia)
Mensajes: 1.900
Antigüedad: 15 años, 10 meses
Puntos: 29
Re: Form que se procesa en la misma pagina. Util?

Hay otro problema en poner el &lt;form action... enlazado a la misma página, que incluso puede cargar el caché del navegador y no enviar ningún dato, no es la primera vez que me pasa... saludos.
  #5 (permalink)  
Antiguo 16/07/2002, 17:58
 
Fecha de Ingreso: febrero-2002
Mensajes: 64
Antigüedad: 15 años, 10 meses
Puntos: 0
Re: Form que se procesa en la misma pagina. Util?

Gracias CHuLo,

Entonces... tú me aconsejas que use dos archivos, uno con el formulario y otro archivo.php que procese los datos, no?

Puede ser que me pase eso que dices de que se cargue del caché y no procese, siendo como lo tengo con un condicional en php en el que pregunto por el valor de un hidden... a ver, mejor pongo parte del código para que quede más claro:
Código:
 
&lt;?php
   if ($ALTAS=&quot;SI&quot;) {
       //se procesan los datos
   }
   else {
?&gt;
       &lt;form action=&quot;&quot; method=&quot;post&quot; name=&quot;form1&quot;&gt;
           //todo el formulario
           &lt;input type=&quot;submit&quot;&gt;
           &lt;input type=&quot;hidden&quot; name=&quot;ALTAS&quot; value=&quot;SI&quot;&gt;
       &lt;/form&gt;
&lt;?php
   }
?&gt;
eso es más o menos lo que tengo. Crees que debería cambiarlo? No estás de acuerdo con la opinión de Cluster?

Gracias.

Salu2
Mònica J.M.
  #6 (permalink)  
Antiguo 16/07/2002, 18:36
Avatar de bhonox  
Fecha de Ingreso: julio-2002
Ubicación: Rengo-Viña del Mar-Stgo
Mensajes: 1.213
Antigüedad: 15 años, 5 meses
Puntos: 0
Re: Form que se procesa en la misma pagina. Util?

la manera que lo plateas esta bien, por lo menos asi lo manejo yo, aunque tengo un menu que lo trabajo son switch(valor) y valor es lo que coloco en el campo oculto (&lt;input type=\&quot;hidden\&quot;...)

pero la forma de manejar con un formulario en html es mas simple que la mia

Atte BHONOX

  #7 (permalink)  
Antiguo 17/07/2002, 08:54
 
Fecha de Ingreso: febrero-2002
Mensajes: 64
Antigüedad: 15 años, 10 meses
Puntos: 0
Re: Form que se procesa en la misma pagina. Util?

Pero alguien puede decirme si con mi planteamiento corro el riesgo que me comentó CHuLoSoY sobre lo que se cargue la página de la caché?

A mi me parece que no, pero no está de más tener otras opiniones.

Gracias.

salu2
Mònica J.M.
  #8 (permalink)  
Antiguo 17/07/2002, 09:39
Avatar de bhonox  
Fecha de Ingreso: julio-2002
Ubicación: Rengo-Viña del Mar-Stgo
Mensajes: 1.213
Antigüedad: 15 años, 5 meses
Puntos: 0
Re: Form que se procesa en la misma pagina. Util?

a mi parecer y segun mi funcionamiento lo que haces esta bien, por lo menos no me a pasado lo que dice el, asi que por eso te digo con firmeza que esta bien...


ATTTE BHONOX
  #9 (permalink)  
Antiguo 17/07/2002, 09:42
 
Fecha de Ingreso: febrero-2002
Mensajes: 64
Antigüedad: 15 años, 10 meses
Puntos: 0
Re: Form que se procesa en la misma pagina. Util?

Muchas gracias, BHONOX, por contestar tan rápido.

La verdad es que es un gran alivio :P

  #10 (permalink)  
Antiguo 17/07/2002, 10:25
Avatar de Yagorat  
Fecha de Ingreso: marzo-2002
Ubicación: Madrid
Mensajes: 161
Antigüedad: 15 años, 8 meses
Puntos: 0
Re: Form que se procesa en la misma pagina. Util?

Buenas, el problema que tenia yo al hacer el script de php en la misma pagina que el form, era que despues de meter un dato y procesarlo, volvia a enseñar el form en la misma pagina, por lo que si alguien le daba al boton de actualizar me volvia a insertar los mismos datos. Por eso no se ha de mostrar nuevamente el formulario, sino un enlace del tipo &quot;Pulse aqui si quiere introducir otro dato&quot;.

Creo que lo he liado un poco :roto:

Un saludo a todos.

------------------------
Solo se que no se nada.
Yagorat - Webmaster sin web
  #11 (permalink)  
Antiguo 17/07/2002, 12:02
 
Fecha de Ingreso: febrero-2002
Mensajes: 64
Antigüedad: 15 años, 10 meses
Puntos: 0
Re: Form que se procesa en la misma pagina. Util?

Yagorat, gracias por tu apreciación, pero creo que es más fiable, lo que comentó Cluster, hacer un redirect a otra página que muestre el mensaje que sea

Gracias, de todos modos ;)

Salu2
Mònica J.M.
  #12 (permalink)  
Antiguo 17/07/2002, 17:55
Avatar de bhonox  
Fecha de Ingreso: julio-2002
Ubicación: Rengo-Viña del Mar-Stgo
Mensajes: 1.213
Antigüedad: 15 años, 5 meses
Puntos: 0
Re: Form que se procesa en la misma pagina. Util?

esa es buena opcion, aunque yo lo hago con header(location....)
pero tambien podria ser un mensaje de alerta de script, ya q sus lineas son muy simple

ATTE BHONOX
  #13 (permalink)  
Antiguo 17/07/2002, 19:13
Avatar de ceronne  
Fecha de Ingreso: diciembre-2001
Ubicación: Paris
Mensajes: 990
Antigüedad: 16 años
Puntos: 1
Re: Form que se procesa en la misma pagina. Util?

Cita:
Pero alguien puede decirme si con mi planteamiento corro el riesgo que me comentó CHuLoSoY sobre lo que se cargue la página de la caché?

yo proobé lo de la redirección y efectivamente la página antes de ser modificada (en mi caso yo la modifico) y se queda en el cache..... a pesar de que uso CONTENT=&quot;no-cache&quot;

que otra opcion hay???????
  #14 (permalink)  
Antiguo 18/07/2002, 07:22
 
Fecha de Ingreso: febrero-2002
Mensajes: 64
Antigüedad: 15 años, 10 meses
Puntos: 0
Re: Form que se procesa en la misma pagina. Util?

Lo siento Ceronne, pero no he entendido lo que has dicho :(
  #15 (permalink)  
Antiguo 18/07/2002, 12:22
Avatar de ceronne  
Fecha de Ingreso: diciembre-2001
Ubicación: Paris
Mensajes: 990
Antigüedad: 16 años
Puntos: 1
Re: Form que se procesa en la misma pagina. Util?

me refiero a que yo también uso una página aparte para procesar los datos en la base de datos, al terminar de procesar le pongo un &quot;redirect&quot; mediante javascript a la página de CONSULTA.......resulta qeu cuando llego a la página de consulta (la página original) me sigue mostrando los datos que estaban antes de la inserción/modificacion/eliminacion. Le pongo no cache en los meta tags y pues no jala.... como puedo hacer para que me mueste los datos directos de la BD y no del cache?
  #16 (permalink)  
Antiguo 18/07/2002, 13:32
O_O
 
Fecha de Ingreso: enero-2002
Ubicación: Santiago - Chile
Mensajes: 34.417
Antigüedad: 15 años, 11 meses
Puntos: 126
Re: Form que se procesa en la misma pagina. Util?

.. cerone...
y la funcion javascript que usas para &quot;redirecionar&quot; .. no sera un history.back() .. o similar? .. si es asi, es normal que te aparezcan los valores rellenados en el formulario ..

Para evitarse problemas . .hagan:
header(&quot;Location: lapaginadelformulario.tal&quot;);

Un saludo,
  #17 (permalink)  
Antiguo 18/07/2002, 19:36
Avatar de bhonox  
Fecha de Ingreso: julio-2002
Ubicación: Rengo-Viña del Mar-Stgo
Mensajes: 1.213
Antigüedad: 15 años, 5 meses
Puntos: 0
Re: Form que se procesa en la misma pagina. Util?

eso es exactamente lo que hago yo, a eso me referia en las lineas de arriba

ATTE BHONOX
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 00:54.