Pensé que había respondido esta pregunta antes gracias a StackOverFlow, pero rápidamente tomé una respuesta y resultó no ser la verdadera causa de mi problema.Las páginas cargan dos veces en Firefox?
He comprobado mi Apache registro de acceso:
Este soy yo hojear mi aplicación web en Google Chrome Browser.
127.0.0.1 - - [06/Jan/2010:22:17:35 +0000] "GET /webs/end/new.php HTTP/1.1" 200 2146
127.0.0.1 - - [06/Jan/2010:22:17:36 +0000] "GET /webs/end/settings.php HTTP/1.1" 200 4548
127.0.0.1 - - [06/Jan/2010:22:17:38 +0000] "GET /webs/end/index.php HTTP/1.1" 200 2042
Este soy yo navegando por mi aplicación web en IE7.
127.0.0.1 - - [06/Jan/2010:22:21:49 +0000] "GET /webs/end/settings.php HTTP/1.1" 200 4548
127.0.0.1 - - [06/Jan/2010:22:21:50 +0000] "GET /webs/end/index.php HTTP/1.1" 200 2042
Esta soy yo navegando por mi aplicación web en Firefox.
127.0.0.1 - - [06/Jan/2010:22:18:08 +0000] "GET /webs/end/settings.php HTTP/1.1" 200 4548
127.0.0.1 - - [06/Jan/2010:22:18:09 +0000] "GET /webs/end/settings.php HTTP/1.1" 200 4548
127.0.0.1 - - [06/Jan/2010:22:18:10 +0000] "GET /webs/end/index.php HTTP/1.1" 200 2042
127.0.0.1 - - [06/Jan/2010:22:18:10 +0000] "GET /webs/end/index.php HTTP/1.1" 200 2042
127.0.0.1 - - [06/Jan/2010:22:18:11 +0000] "GET /webs/end/new.php HTTP/1.1" 200 2146
127.0.0.1 - - [06/Jan/2010:22:18:12 +0000] "GET /webs/end/new.php HTTP/1.1" 200 2146
Esto es solo yo haciendo clic alrededor. Pero cuenta que para cada solicitud de página, parece que Firefox está cargando la página dos veces y está efectuando mis scripts PHP, ya que se están ejecutando dos veces y realizando dos inserciones en mi base de datos.
¿Por qué es el caso? Estoy usando Firefox 3.5.6. Supongo que este es un problema de Firefox en lugar de PHP/Apache.
Realmente espero que las inserciones de las que habla estén registrando estrictamente. Si la emisión de solicitudes GET causa algún otro cambio de datos, entonces tiene serios problemas de diseño aquí. – NotMe
'Si la emisión de solicitudes GET causa algún otro cambio de datos, eso es una afirmación completamente falsa. No hay diferencia si acepta una serie de parámetros de entrada desde un conjunto de campo de formulario en la publicación o una colección de cadena de consulta en una obtención. –
No diría que no hay diferencia. En primer lugar, la solicitud posterior requeriría una nueva publicación (que la mayoría de los navegadores solicitarían al usuario), mientras que una solicitud GET puede volver a solicitarse fácilmente (sin querer) y copiar la URL y pegarla la volvería a solicitar. Además, alguien podría poner fácilmente un enlace en un img en su sitio con el src apuntando a su sitio, y cualquiera que visite su sitio lo publicará en su sitio. Si su seguridad está basada en cookies, su cookie aún se enviará. Por lo tanto, existen bastantes razones para no utilizar GET para publicar datos que se persistan o solicitudes que alterarán los datos. –