Foros del Web » Programando para Internet » PHP »

Autenticarse con sesiones

Estas en el tema de Autenticarse con sesiones en el foro de PHP en Foros del Web. Uso sesiones en una página que estoy haciendo, en la que te autentificas y entras en zona reservada. Ok, pues mientras el usuario está en ...
  #1 (permalink)  
Antiguo 13/02/2003, 09:10
Avatar de banyuken  
Fecha de Ingreso: diciembre-2002
Ubicación: Madrid
Mensajes: 83
Antigüedad: 21 años, 4 meses
Puntos: 0
Autenticarse con sesiones

Uso sesiones en una página que estoy haciendo, en la que te autentificas y entras en zona reservada. Ok, pues mientras el usuario está en ella, se guardan sus datos en un archivo temporal de sesión, creado por PHP. Ok, hasta ahí bien. Lo pruebo en mi casa, bien. Lo prueba un colega mío en su casa, bien. Lo pruebo desde una máquina Linux, desde el Konqueror, y pasan cosas extrañas:
a) Me intenta colar cookies al autenticarme. Yo no las envío. ¿Quién lo hace?
b) No me deja entrar, y del mensaje que me da se saca en conclusión que el problema es que las variables de sesión que debieran haber sido creadas al verificar que el usuario y la contraseña son correctos no se crean. ¿Por qué no lo hacen?
Se rumorea que existe una especie de proxy maldito, en ADSL timofónica; es la línea que yo tengo. ¿Creen ustedes que puede ser por eso?
Agradecería mil sus respuestas a mis interrogantes, aunque sean puros castilletes en el aire.
Gracias, un saludo,
Banyú.
  #2 (permalink)  
Antiguo 13/02/2003, 10:15
O_O
 
Fecha de Ingreso: enero-2002
Ubicación: Santiago - Chile
Mensajes: 34.417
Antigüedad: 22 años, 3 meses
Puntos: 129
Cita:
a) Me intenta colar cookies al autenticarme. Yo no las envío. ¿Quién lo hace?
Lo hace la configuración de php.ini (en un phpinfo() tambien lo puedes ver):

session.use_cookies = 1 (activo)

Cita:
b) No me deja entrar, y del mensaje que me da se saca en conclusión que el problema es que las variables de sesión que debieran haber sido creadas al verificar que el usuario y la contraseña son correctos no se crean. ¿Por qué no lo hacen?
Todo viene a raiz de que el SID (identificador Único de sesion) no ha podido ser propagado .. pues se intentaba hacer por una cookie y tu cliente no le ha dejado.

Se puede forzar a un script.php que trabaje con propagación del SID NO por cookies sino en el URL (y siguiendo en modo automático) ..

Revisa este mensaje:
http://www.forosdelweb.com/showthrea...hreadid=115687

Un saludo,
  #3 (permalink)  
Antiguo 13/02/2003, 16:33
Avatar de banyuken  
Fecha de Ingreso: diciembre-2002
Ubicación: Madrid
Mensajes: 83
Antigüedad: 21 años, 4 meses
Puntos: 0
De acuerdo Ok, otra cosita más

http://www.miservidor.com/loquesea.p...3afe138c572dc9

¿Qué he de hacer para que me deje poner en lugar de PHPSESSID cualquier otro identificador un poco menos cantoso?

He intentado algo tal que así:
echo "<META HTTP-EQUIV=\"Refresh\" CONTENT=\"0;URL=indexroot.php?sess=".session_id(). "\">";

Pero luego en indexroot.php, al llamar a "session_start()" nada de nada.

Gracias por tener paciencia. Saludos,
Banyú.
  #4 (permalink)  
Antiguo 13/02/2003, 16:48
Ex Colaborador
 
Fecha de Ingreso: junio-2002
Mensajes: 9.091
Antigüedad: 21 años, 10 meses
Puntos: 16
Hola,

Creo que se puede cambiar en el php.ini. Y quizas te sirva session_name()

Suerte.
__________________
Josemi

Aprendiz de mucho, maestro de poco.
  #5 (permalink)  
Antiguo 14/02/2003, 10:30
O_O
 
Fecha de Ingreso: enero-2002
Ubicación: Santiago - Chile
Mensajes: 34.417
Antigüedad: 22 años, 3 meses
Puntos: 129
Se puede cambiar y trabajar con varias sessiones a la vez .. tan solo tienes que indicar el nombre de la session antes de session_start() .. y SIEMPRE tienes que decirle el nombre de la sesion q vas a usar. Si en alguna pagina se te "olvida" indicarlo ..se creará una session nueva .. por lo tanto los datos de la sesion de nombre X no seran disponibles para la sesion Y ..

Código PHP:
<?
session_name
("misesion");
session_start();
// resto de fuciones o acceso a variables de esta sesion
?>
Insisto . siempre en ese orden .. si haces un session_name bajo un session_start() obtendras el nombre de la sesion en curso .. pero no "darle" el nombre.

Un saludo,
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 18:23.