Foros del Web » Programando para Internet » PHP »

problema al actualizar una pagina web

Estas en el tema de problema al actualizar una pagina web en el foro de PHP en Foros del Web. hola el problema que tengo es que si refrescan mi ventana de registro en la base de datos de un formulario que pedi en la ...
  #1 (permalink)  
Antiguo 10/11/2009, 17:23
 
Fecha de Ingreso: enero-2009
Mensajes: 126
Antigüedad: 15 años, 3 meses
Puntos: 1
problema al actualizar una pagina web

hola el problema que tengo es que si refrescan mi ventana de registro en la base de datos de un formulario que pedi en la ventana anterior estos se vuelven a ingresa en la base de datos como podria envitar esto, algo similar sucede si es que usan las fechas de retroceso es decir lo que deseo es evitar que se dupliquen los datos en mi base cuando usan el F5 o la fecha de retroceso
  #2 (permalink)  
Antiguo 10/11/2009, 17:52
Avatar de zaetoner  
Fecha de Ingreso: noviembre-2007
Ubicación: La ciudad de México
Mensajes: 607
Antigüedad: 16 años, 4 meses
Puntos: 30
Respuesta: problema al actualizar una pagina web

en la pagina del formulario pon esto;
Código PHP:
session_start();
mt_srand(time());
$dinamico=mt_rand(1000000,9000000);
$_SESSION['dinamico']=$dinamico
y envia la variable dinamico a la otra pagina tambien en la otra pagina pon este codigo

Código PHP:
session_start();
if(
$dinamico==$_SESSION['dinamico']){

//hago el ingreso de datos

}
mt_srand(time());
$dinamico=mt_rand(1000000,9000000);
//actualizo el numero de session por si actualiza la pagina

$_SESSION['dinamico']=$dinamico
de cualquier modo aqui andamos

saludos
__________________
...
  #3 (permalink)  
Antiguo 10/11/2009, 18:05
 
Fecha de Ingreso: enero-2009
Mensajes: 126
Antigüedad: 15 años, 3 meses
Puntos: 1
Respuesta: problema al actualizar una pagina web

gracias por la respuesta pero tengo una pregunta yo uso el siguiente script de incio de seion

Código PHP:
include("conec.php");
$link=Conectarse();

if (
$_POST['username']) { 
//Comprobacion del envio del nombre de usuario y password 
$username=$_POST['username']; 
$password=$_POST['password']; 
if (
$password==NULL) { 
echo 
"El password no fue enviada"
}else{ 
$query mysql_query("SELECT * FROM nutricionista WHERE Usuario = '$username'") or die(mysql_error()); 
$data mysql_fetch_array($query); 
if(
$data['Contrasena'] != $password) { 
echo 
"<h1>Login incorrecto</h1>"
}else{ 
$query mysql_query("SELECT * FROM nutricionista WHERE Usuario = '$username'") or die(mysql_error()); 
$row mysql_fetch_array($query); 

session_start(); 
session_name("usuarios_ingreso");
$_SESSION["s_username"] = $row['Usuario']; 
$_SESSION["nivel"] = $row['Privilegio'];
$_SESSION["activo"]=true;

header("Location: reg_paciente.php");



y como dentro de este script uso la sentecia session_start();

no abria conflictos al usar nuevamente session_start(); en cada formulario y ademas me podria explicar que logro con ese script que me mandaste?? no lo entiendo muy bien
  #4 (permalink)  
Antiguo 10/11/2009, 18:08
Avatar de zaetoner  
Fecha de Ingreso: noviembre-2007
Ubicación: La ciudad de México
Mensajes: 607
Antigüedad: 16 años, 4 meses
Puntos: 30
Respuesta: problema al actualizar una pagina web

no, por que es lo mismo, solo abria problema si usaras las mismas variables que use yo , y si ese fuera el caso ssolo cambias las de mi script.

session_start() solo se pone una vez

es importante que cambies el numero dinamico una vez que isiste el registro
__________________
...
  #5 (permalink)  
Antiguo 10/11/2009, 18:32
 
Fecha de Ingreso: enero-2009
Mensajes: 126
Antigüedad: 15 años, 3 meses
Puntos: 1
Respuesta: problema al actualizar una pagina web

Cita:
Iniciado por zaetoner Ver Mensaje
en la pagina del formulario pon esto;
Código PHP:
session_start();
mt_srand(time());
$dinamico=mt_rand(1000000,9000000);
$_SESSION['dinamico']=$dinamico
y envia la variable dinamico a la otra pagina tambien en la otra pagina pon este codigo

Código PHP:
session_start();
if(
$dinamico==$_SESSION['dinamico']){

//hago el ingreso de datos

}
mt_srand(time());
$dinamico=mt_rand(1000000,9000000);
//actualizo el numero de session por si actualiza la pagina

$_SESSION['dinamico']=$dinamico
de cualquier modo aqui andamos

saludos
mmm ya osea como ya incie sesion entonces omitire la sentecia seesion_star() y defrente pondre en la pagina de mi formulario mt_srand(time());

pero osea no entiendo my bi9enc que logro con eso es algo asi como restringir el tiempo para realizar el insert?? y a que valores deberia cambiar estas variables
  #6 (permalink)  
Antiguo 10/11/2009, 18:38
Avatar de zaetoner  
Fecha de Ingreso: noviembre-2007
Ubicación: La ciudad de México
Mensajes: 607
Antigüedad: 16 años, 4 meses
Puntos: 30
Respuesta: problema al actualizar una pagina web

no lo que eso hace es mandar un numero del formulario al script que procesa, cuando el script compara el numero con el anterior si son iguales introduce datos a la base de datos y cambia el numero, asi si el usuario actualiza la pagina los numeros seran diferentes y no se ingresaran nuevamente los datos
__________________
...
Atención: Estás leyendo un tema que no tiene actividad desde hace más de 6 MESES, te recomendamos abrir un Nuevo tema en lugar de responder al actual.
Respuesta




La zona horaria es GMT -6. Ahora son las 08:29.