Ver Mensaje Individual
  #3 (permalink)  
Antiguo 14/07/2004, 12:04
Cluster
O_O
 
Fecha de Ingreso: enero-2002
Ubicación: Santiago - Chile
Mensajes: 34.417
Antigüedad: 22 años, 3 meses
Puntos: 129
El problema no debes resolverlo por "evitar recargar la página" .. sino en redireccionar a otra página cuando termines el proceso con tu BD.

Es decir .. NO mostrar los típicos mensajes de error/exito o el própio "listado" de esos registros en el mismo flujo de código que ha realizado tu INSERT/UPDATE a tu BD.

Debes redireccionar .. ejemplo:

Código PHP:
<?
// proceso php
header ("Location: pagina.tal");
?>
NO es necesario que el proceso php y el código de tu formulario/listado de esos registros o demás acciones estén en scripts por separado .. pero si están en uno mismo tendrás que usar variabels de control para determinar en que proceso estás y así redireccionar con ese parámetro en el URL que va indicar que se va hacer despues de tu proceso.

ejemplo

Código PHP:
<?
if ($_GET['accion'] == "listar"){
// tu código del listado o formulario ..
} else {
// el formulario ...
}

if (isset(
$_POST['submit'])){
 
// proceso
header ("Location: $_SERVER['PHP_SELF']."?accion=listado");
exit;
}
?>
es un ejemplo a la rápida .. se controlaría mejor todo bajo un switch() para las "acciones" .. pero lo más importante de todo esto es ver a los procesos PHP como scripts independientes que se "pide" su ejecución y al terminar "redireccionan" al cliente (navegador en tu caso) a otro script o página o sitio en general .. Por el "camino" al redireccionar así se pierden todas las variabels que viajasen en las cabeceras HTTP y por ende no habrá mas peticioes de enviar denuevo las variabels o que se tomen las anteriores.

Un saludo,