RE: [PHP-ES] Evitar recarga

From: Date: Fri, 28 May 2004 07:21:35 +0000
Subject: RE: [PHP-ES] Evitar recarga
References: 1  Groups: php.general.es 
Request: Send a blank email to general-es+get-48990@lists.php.net to get a copy of this message
Creo que ya se comentó en la lista, yo uso header siempre que mando formularios. Es decir: Index.php Tiene un: <form action=<? Echo $PHP_SELF ?> ........> Con entre otras cosas, un <input type=hidden... name=accio value=agregar_registro>. Entonces en el principio de index.php (antes el tag <html>) le pongo <? If($accio=="agregar_registro){ If(!empty($nom) && !empty(....){ // operaciones necesarias } header("Location: $PHP_SELF"); } ?> A parte, en el botón le pongo un script para que se autodeshabilite al clicarlo, para evitar dobles clicks y esas cosas... (algo parecido a onClick='self.disabled=true;submit();') En el supuesto que desearas un control de errores para conservar los datos correctos (en vez de decir "ha fallado algo, ahora vas y lo tecleas todo otra vez"), en el control que hagas debes hacer simplemente un header("Location= $PHP_SELF?nombre=$nombre&empresa=$empresa...");... en fin a partir de ahí ya cada cual como guste. ---------------------------------------------------------------------------- Pere Picornell, Director de Projectes - p.picornell@mediactives.com Mediactive Network - Serveis avançats d'Internet www.mediactives.com - Tel.: 93 860 55 50 / Fax: 93 860 55 51 | -----Mensaje original----- | De: Gustavo Castro [mailto:c_gustavo@intema.com.ar] | Enviado el: martes, 25 de mayo de 2004 3:55 | Para: php-es@lists.php.net | Asunto: RE: [PHP-ES] Evitar recarga | | Si estoy casi seguro que eso es asi, mi procedimiento es el siguiente, | | Formulario -> script que inserta -> Formulario (tambien puede ser a donde | quieras ir). | | Desde el script al formulario reenvio. | | | He tenido algun suceso desgraciado (que exagerado). Que un proceso script | tardo mucho y el operador me mando F5 o retrocedio y volvio a pedir y se me | armo alguna cosita en la base, y eso que utilizando transacciones. | | Bueno es un temita que no resolvi, no se si les paso alguna vez. Es medio | intrincado si desean lo comento en profundidad a ver si intercambiamos | ideas. | | | Saludos cordiales, | | Gustavo Castro | | -----Original Message----- | From: Satyam [mailto:Satyam@satyam.com.ar] | Sent: Jueves, 27 de Mayo de 2004 09:15 a.m. | To: Jandro brozaman; php-es@lists.php.net | Subject: Re: [PHP-ES] Evitar recarga | | | Una forma que se me ocurre es que a la página de confirmación llegue a | través de una redirección. | | Creo que los navegadores habitualmente recuerdan una redirección y usan esa | para responder a un refresco, pero no lo puedo asegurar. | | Si hay otra forma, me encantaría conocerla. O si alguien puede confirmar mi | sugerencia, | | Satyam | | ----- Original Message ----- | From: "Jandro brozaman" <aorviz2002@yahoo.es> | To: <php-es@lists.php.net> | Sent: Thursday, May 27, 2004 2:03 PM | Subject: [PHP-ES] Evitar recarga | | | > Hola a todos: | > | > Tengo un problemilla, que quizás alguien me sepa resolver. Tengo un | formulario que al pulsar en el boton Guardar, me guarda logicamente la | informacion en una base de datos, hasta aqui genial. | > | > El problema es que si el usuario pulsa F5 o da a recargar en el navegador | me lo vuelve a insertar. | > | > Por lo que quería saber como puede evitar esto, si puede ser con algún | javascript que deshabilite el reload(), mejor, o con PHP de alguna forma, no | se, llevo media mañana dandole vueltas y buscando soluciones y no las | encuentro. Sois mi última esperanza ;-) | > | > Un saludo a todos y gracias de antemano, Alex | > | > | > --------------------------------- | > Correo Yahoo!: 6MB, más protección contra el spam ¡gratis! | | -- | PHP Spanish Localization Talk Mailing List (http://www.php.net/) | To unsubscribe, visit: http://www.php.net/unsub.php | | -- | PHP Spanish Localization Talk Mailing List (http://www.php.net/) | To unsubscribe, visit: http://www.php.net/unsub.php

« previous php.general.es (#48990) next »