Cita: Hasta aquí perfecto, el problema está en que en la página3 tengo un enlace de javascript para volver a la página2 (javascript:history.back()) peeeeeeero, cuando pincho en él me sale el dichoso mensajito:
Advertencia: La página ha caducado La página solicitada se creó utilizando la información que envió en un formulario. Esta página no está ya disponible. Como medida de precaución, Internet Explorer no volverá a enviarle la información.
Para volver a enviar la información y ver esta página Web haga clic en el botón Actualizar
Tienes dos soluciones:
1) Usar método GET en tu formularios en lugar de POST.
2) No se vé el código que usas .. pero al parecer haces un proceso PHP y seguidamente muestras algún mensajito o datos que se han generado en ese mismo script. La solución es redireccionar automáticamente al terminar tu proceso hacia otro script que presente esos datos finales/mensajito o lo que corresponda. Si necesitas "control" sobre lo que has de presentar usa variables propagadas en el URL (en ese link) o en sesiones/cookies.
El redireccionamiento sería del tipo:
Código PHP:
// proceso PHP .. sin nada de HTML como salida ni nada por encima de este ...
header ("Location: pagina.tal");
exit;
Con eso evitas completamente ese problema. En los "navegadores" que no te dá ese aviso .. revisa tus BD y mira si tienes registros duplicados .. si recargas la página esa que hace tu proceso y muestra el mensaje va a ocurrir eso mismo (lo mismo que si andas hacia atras por el historial del navegador .. te avise o no que serán reenviados tus datos).
Un saludo,