Ver Mensaje Individual
  #4 (permalink)  
Antiguo 13/03/2006, 10:00
Cluster
O_O
 
Fecha de Ingreso: enero-2002
Ubicación: Santiago - Chile
Mensajes: 34.417
Antigüedad: 22 años, 3 meses
Puntos: 129
Deberías alcarar primero tu que programación usas.

Normalmente el problema que describes además que es un aviso sucede por qué usas sesiones y enviastes tus datos por método POST desde un formulario.

En ese caso .. el uso de sesiones ajusta la "caché" de las páginas que se generan a un "noche" o "private" que hace que te indique si vuelves a la página anterior por el "historial" del navegador que la página ya ha caducado. Cosa completamente normal y de esperar en un sistema basado en sesiones.

Soluciones.

TU aplicación NUNCA debería dejar el proceso de unos datos de formulario (por método POST) en una página generada. Es decir, hacer cosas como:

formulario.php
Código PHP:
// tu formulario ...
<form action="procesar.php" method="post">
etc .. 
procesar.php
Código PHP:
<? 

hacer un proceso y 
..

echo 
"algo"// mostrar un mensaje .. generar una página en este punto.
Lo que debes hacer es SIEMPRE que termines el proceso, redireccionar a otra página donde mostraras tu mensaje de error/exito o cualquier otro proceso.

proceso.php
Código PHP:
<?
// proceso PHP
header ("Location: nosedonde.php");
exit;
?>
Con eso ya evitas que el navegador almacene (mejor dicho los descarta) los datos enviados por POST al cambiar de método (GET cuando haces una redirección de ese estilo).

Otras soluciones son la de ajustar el "cacheado" de tus páginas. Si usas sesiones la función:

session_cache_limiter() lo define y ajusta .. deberías ajustarlo a un valor "public" o similar para que no te "expire" la página en esas condiciones.

Un saludo,