Foros del Web » Programando para Internet » PHP »

Problema con variables de sesion (muestran valor equivocado)

Estas en el tema de Problema con variables de sesion (muestran valor equivocado) en el foro de PHP en Foros del Web. la verdad no puedo entender lo qe pasa... en el mismo script uso $_SESSION[""] varias veces, pero nunca me paso esto: en una parte pongo ...
  #1 (permalink)  
Antiguo 21/05/2011, 11:07
 
Fecha de Ingreso: enero-2011
Mensajes: 33
Antigüedad: 13 años, 2 meses
Puntos: 0
Problema con variables de sesion (muestran valor equivocado)

la verdad no puedo entender lo qe pasa...

en el mismo script uso $_SESSION[""] varias veces, pero nunca me paso esto:

en una parte pongo


echo $_SESSION["nick"];

y me aparece correctamente el nick del usuario con id 1. Como debe ser...

pero al escribir, en ese mismo script:


echo $_SESSION["usuario_id"];

no me devuelve la id "1", la cual corresponde al nick qe anteriormente fue impreso en pantalla... sino qe me devuelve el valor "3", el cual no puedo entender de donde salio :B

se agradece cualqier ayuda :)
  #2 (permalink)  
Antiguo 21/05/2011, 11:11
Avatar de Ronruby  
Fecha de Ingreso: julio-2008
Ubicación: 18°30'N, 69°59'W
Mensajes: 4.879
Antigüedad: 15 años, 9 meses
Puntos: 416
Respuesta: Problema con variables de sesion (muestran valor equivocado)

¿Como guardas las variables de SESSION?

Muestra el script que crea la session para poder ayudarte mejor
  #3 (permalink)  
Antiguo 21/05/2011, 11:15
 
Fecha de Ingreso: enero-2011
Mensajes: 33
Antigüedad: 13 años, 2 meses
Puntos: 0
Respuesta: Problema con variables de sesion (muestran valor equivocado)

Código PHP:
$usuarios=mysql_query("SELECT * FROM usuarios WHERE nick='$_POST[nick]' AND pass='$_POST[pass]' ");
            if(
$user_autentificado mysql_fetch_array($usuarios)) //si existe comenzamos con la sesion, si no, al index
            
{    
                
//damos valores a las variables de la sesión
                
$_SESSION["usuario_id"] = $user_autentificado["usuario_id"]; //damos el nick a la variable usuario
                
$_SESSION["nick"] = $user_autentificado["nick"]; //damos la id del user a la variable idusuario
                
$_SESSION["pass"] = $user_autentificado["pass"]; //damos el level del user a la variable level
                
$_SESSION["img_perfil"] = $user_autentificado["img_perfil"];
                
$_SESSION["nacionalidad"] = $user_autentificado["nacionalidad"];
                
$_SESSION["fecha_nacimiento"] = $user_autentificado["fecha_nacimiento"];
                
$_SESSION["email"] = $user_autentificado["email"];
                
$_SESSION["ubicacion"] = $user_autentificado["ubicacion"];
                
$_SESSION["estado"] = $user_autentificado["estado"];
                
$_SESSION["onda"] = $user_autentificado["onda"];
                
$_SESSION["descripcion"] = $user_autentificado["descripcion"];
                
$_SESSION["telefono"] = $user_autentificado["telefono"];
                
$_SESSION["posts_creados"] = $user_autentificado["posts_creados"];
                
$_SESSION["rango"] = $user_autentificado["rango"];
                
$_SESSION["fecha_ingreso"] = $user_autentificado["fecha_ingreso"];
                
$_SESSION["msn"] = $user_autentificado["msn"];
                
$_SESSION["intereses"] = $user_autentificado["intereses"];
                
$_SESSION["reputacion"] = $user_autentificado["reputacion"];
                
$_SESSION["amigos"] = $user_autentificado["amigos"]; 
no creo qe el problema este aca, use las variables de sesion muchas veces en el sitio qe estoy haciendo, y nunca tuve este problema :|

y tampoco hice nada fuera de lo normal, si fuera error de sintaxis me saltaria algun error de php, pero no me devolveria otro valor :|
  #4 (permalink)  
Antiguo 21/05/2011, 11:24
 
Fecha de Ingreso: agosto-2010
Ubicación: Tenerife
Mensajes: 893
Antigüedad: 13 años, 8 meses
Puntos: 202
Respuesta: Problema con variables de sesion (muestran valor equivocado)

¿Cambias en algún otro lado el valor de la variable $_SESSION["usuario_id"]?
__________________
Pensaba que internet era una gran biblioteca de sabiduría, hasta que comprendí que un libro no puede tener mil páginas llenas de faltas de ortografía... :(
  #5 (permalink)  
Antiguo 21/05/2011, 11:26
 
Fecha de Ingreso: enero-2011
Mensajes: 33
Antigüedad: 13 años, 2 meses
Puntos: 0
Respuesta: Problema con variables de sesion (muestran valor equivocado)

No, no le cambie nunca el valor... ni tampoco se para qe qerria hacer algo asi xd
  #6 (permalink)  
Antiguo 21/05/2011, 11:40
 
Fecha de Ingreso: agosto-2010
Ubicación: Tenerife
Mensajes: 893
Antigüedad: 13 años, 8 meses
Puntos: 202
Respuesta: Problema con variables de sesion (muestran valor equivocado)

pues por descartar posibilidades. yo tampoco sé porque usas tantas variables de sesion. Guardas sólo la id y las demás las obtienes cuando las necesites haciendo una consulta. Se consume menos memoria y es más limpio el código. También ocupa menos.

Volviendo al tema ¿Sólo te pasa con ese usuario?
__________________
Pensaba que internet era una gran biblioteca de sabiduría, hasta que comprendí que un libro no puede tener mil páginas llenas de faltas de ortografía... :(
  #7 (permalink)  
Antiguo 21/05/2011, 11:57
 
Fecha de Ingreso: enero-2011
Mensajes: 33
Antigüedad: 13 años, 2 meses
Puntos: 0
Respuesta: Problema con variables de sesion (muestran valor equivocado)

ya dejo de pasarme... nose qe fue.. estoy re confundido xd

pero igual gracias por las respuestas

ah, y es verdad qe uso demasiadas variables de sesion, ademas ni siquiera las uso, los campos de la pagina se rellenan usando mysql xd
  #8 (permalink)  
Antiguo 21/05/2011, 12:47
Avatar de HackmanC  
Fecha de Ingreso: enero-2008
Ubicación: Guatemala
Mensajes: 1.817
Antigüedad: 16 años, 2 meses
Puntos: 260
Sonrisa Respuesta: Problema con variables de sesion (muestran valor equivocado)

Hola,

Posiblemente el usuario está duplicado, si PHP cambiara el ID de usuario mágicamente cuando se le de la gana, tendríamos que preocuparnos seriamente.

Según el código que mostraste y las descripciones que diste, no queda otra opción mas que un usuario duplicado, como nunca revisaste cuantos usuarios tienen ese nick y pass, seguramente hay dos, el 1 y el 3 con el mismo nick y pass, porque seguramente usuario_id es la llave primaria. Y no hay un orden en que MySQL devuelva los resultados sino hay una clausula ORDER BY, unas veces va a regresar el 1 de primero y otras el 3, normalmente dependiendo del orden físico en el disco duro.

Pero posiblemente ese no es tu mayor problema de seguridad, revisa la documentación de magic_quotes_gpc.

Saludos,
  #9 (permalink)  
Antiguo 21/05/2011, 12:49
 
Fecha de Ingreso: enero-2011
Mensajes: 33
Antigüedad: 13 años, 2 meses
Puntos: 0
Respuesta: Problema con variables de sesion (muestran valor equivocado)

Cita:
Iniciado por HackmanC Ver Mensaje
Hola,

Posiblemente el usuario está duplicado, si PHP cambiara el ID de usuario mágicamente cuando se le de la gana, tendríamos que preocuparnos seriamente.

Según el código que mostraste y las descripciones que diste, no queda otra opción mas que un usuario duplicado, como nunca revisaste cuantos usuarios tienen ese nick y pass, seguramente hay dos, el 1 y el 3 con el mismo nick y pass, porque seguramente usuario_id es la llave primaria. Y no hay un orden en que MySQL devuelva los resultados sino hay una clausula ORDER BY, unas veces va a regresar el 1 de primero y otras el 3, normalmente dependiendo del orden físico en el disco duro.

Pero posiblemente ese no es tu mayor problema de seguridad, revisa la documentación de magic_quotes_gpc.

Saludos,

nono, nada qe ver xd
ya no me pasa mas, tal vez era un problema aislado nada mas

y solo tengo 6 usuarios registrados, todos hechos por mi ajajajj, y no hay ninguno duplicado, e incluso de haberlo no importa, porqe no es el nick lo qe importa, sino su id, y ya qe la id es irrepetible... no tendria sentido la confusion xd

pero bueno, ya esta, no importa, gracias por tomarse la molestia =)
  #10 (permalink)  
Antiguo 21/05/2011, 13:02
Avatar de HackmanC  
Fecha de Ingreso: enero-2008
Ubicación: Guatemala
Mensajes: 1.817
Antigüedad: 16 años, 2 meses
Puntos: 260
Sonrisa Respuesta: Problema con variables de sesion (muestran valor equivocado)

Hola,

Cita:
Iniciado por greenpoop Ver Mensaje
nono, nada qe ver xd
ya no me pasa mas, tal vez era un problema aislado nada mas
Esos problemas aislados no suceden sino hay algo malo en las aplicaciones, el código o en la base de datos.

Cita:
Iniciado por greenpoop Ver Mensaje
... y solo tengo 6 usuarios registrados, todos hechos por mi ajajajj, y no hay ninguno duplicado, e incluso de haberlo no importa, porqe no es el nick lo qe importa, sino su id, y ya qe la id es irrepetible... no tendria sentido la confusion xd ....
Bueno, que bueno que se haya solucionado, seguramente yo me equivoque y tu programa está correcto, porque la id es irrepetible y es lo que importa, y no tiene sentido la confusión entre dos personas con el mismo nombre y contraseña, aunque a veces ... de forma aislada ... tu programa regresa que yo soy el usuario tres cuando realmente soy el uno.

Saludos.

Etiquetas: variables
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 05:39.