Para solventar el problema .. debes evitar tener el mismo proceso de insercción de datos en tu BD o proceso en general en el mismo flujo de código y petición que muestras un mensaje o quedas tras el proceso, redireccionando a otra página automáticamente.
Ejemplo:
Código PHP:
<?
// validación datos del formulario (existencia mínimo) ...
// proceso PHP
//al terminar
header ("Location: otrositio.php");
exit;
?>
Así evitas que al volver atras .. tu formulario se pida "enviar nuevamente la información" .. Ahora te tocará a ti validar en tu script de proceso las variables que requieras de tu formulario (su existencia mínimo).
Si necesitas emitir un mensaje de error/exito al termina tu proceso .. hazo en la página que redireccionas pasando una variable por el URL a esta o bien creando una sesión o cookie para tal fin.
header ("Location: pagina.tal?mensaje=error");
y en la página que redireccionas .. procesas esa variable bajo un:
Código PHP:
if(isset($_GET['mensaje'])){
echo "Atencion: ".$_GET['mensaje'];
}
Un saludo,