Foros del Web » Programando para Internet » PHP »

Como controlar el inicio de sesion de un usuario sin recurrir a cookies !!!!!

Estas en el tema de Como controlar el inicio de sesion de un usuario sin recurrir a cookies !!!!! en el foro de PHP en Foros del Web. A ver si me podéis ayudar un poco; estoy trabajando en una página web, que está hecha en HTML y ahora le estoy incorporando PHP ...
  #1 (permalink)  
Antiguo 24/09/2004, 03:21
JPC
 
Fecha de Ingreso: septiembre-2004
Mensajes: 3
Antigüedad: 19 años, 6 meses
Puntos: 0
Como controlar el inicio de sesion de un usuario sin recurrir a cookies !!!!!

A ver si me podéis ayudar un poco; estoy trabajando en una página web, que está hecha en HTML y ahora le estoy incorporando PHP para hacer un registro de usuarios, ya tengo terminada la página de registro, que está en PHP íntegramente, pero no se como hacer que al entrar en la página principal de la web quede identificado el usuario ya registrado al instante.

Se que con cookies no es la manera mas acertada y he leído que PHP incorpora la función session_start() pero que la web tiene que estar íntegramente realizada en PHP, ya que perdería el contenido de las variables al pasar a páginas HTML.

Estoy empezando en esto del PHP y no me aclaro, ¿Es esto cierto? ¿Cual es la mejor manera de hacer la identificación del usuario?

Gracias a tod@s
Juan
  #2 (permalink)  
Antiguo 24/09/2004, 09:08
 
Fecha de Ingreso: septiembre-2004
Ubicación: Argentina
Mensajes: 49
Antigüedad: 19 años, 7 meses
Puntos: 0
Tendrías que usar una base de datos para almacenar allí los datos de los usuarios (mysql por ej), y después definir variables de sesión pero ese usuario quede registrado durante toda la sesión.
Espero te ayude la data

saludos
  #3 (permalink)  
Antiguo 24/09/2004, 09:13
JPC
 
Fecha de Ingreso: septiembre-2004
Mensajes: 3
Antigüedad: 19 años, 6 meses
Puntos: 0
Gracias, ya tengo hecho el registro de los usuarios, mediante un formulario, y se graban correctamente en una base de datos MySql. También he conseguido iniciar la sesion, pero el problema que tengo es que quiero que un usuario registrado, cuando entre en la web, por ejemplo, una vez al día, la web lo identifique automáticamente, sin tener que validar Nombre y Password (p.ej.) cada vez que entre.

Por lo que he podido entender de las sessiones de PHP son sólo para la sesión en curso, es decir, las variables que defines solo tienen valor durante la session en curso.

Gracias
  #4 (permalink)  
Antiguo 24/09/2004, 10:59
O_O
 
Fecha de Ingreso: enero-2002
Ubicación: Santiago - Chile
Mensajes: 34.417
Antigüedad: 22 años, 3 meses
Puntos: 129
Para ese caso te hace falta cookies si o si. Podrías propagar el SID de una sesión en cookies con tiempos de expiración altos .. pero vendría a ser lo mismo. Es más .. podrías combiar por seguridad ambos métodos como hacen por ejemplo estos foros: te recuerdan como usuario por cookies y luego el sitio continua usando sesiones.

Un saludo,
  #5 (permalink)  
Antiguo 24/09/2004, 11:00
Avatar de jpinedo
Colaborador
 
Fecha de Ingreso: septiembre-2003
Ubicación: Lima, Perú
Mensajes: 3.120
Antigüedad: 20 años, 6 meses
Puntos: 41
Pues tiene que haber una manera de que la aplicación en el servidor identifique al cliente (PC) que se conecta.

Si la identidad del usuario sólo la vas a necesitar durante la sesión actual... lo mejor es utilizar variables de sesión.... es mentira que se pierdan las variables de una a otra si no es 100% PHP (dónde lo leíste?)... lo que sí puedes tener son algunos problemas con el envío de cabeceras para cualquier función como header(), session_start(), mail(), y otras. Pero eso es cuestión de limpiar un poco la programación y ya... (o sea, no es problema del PHP sino de tu programación)...

Ahora... si lo que tú quieres al parecer es que la PC desde la que se autentificó el usuario, ya no requiera autentificación hasta que el usuario haga "logout"... la mejor manera de hacerlo es mediante cookies.
Otra manera de hacerlo sería identificar la PC mediante su IP, cosa que podría funcionar si es una intranet local... pero si el acceso va a ser vía internet.... vas a tener demasiados problemas con esto...
Yo sigo viendo a las cookies como la mejor opción.
Estos Foros tienen la opción "recordarme" al momento de iniciar sesión y lo que hacen es poner una cookie en mi PC con el fin de que yo pueda cerrar el navegador o incluso reiniciar la máquina y si vuelvo a entrar ya no necesito autentificación... y yo creo que es justamente esto lo que quieres hacer.

Saludos
  #6 (permalink)  
Antiguo 24/09/2004, 11:04
Avatar de jpinedo
Colaborador
 
Fecha de Ingreso: septiembre-2003
Ubicación: Lima, Perú
Mensajes: 3.120
Antigüedad: 20 años, 6 meses
Puntos: 41
Cita:
Iniciado por JPC
Se que con cookies no es la manera mas acertada
Otra vez pregunto... ¿dónde lo leíste?.. y por qué crees que no es lo más acertado??

Saludos
  #7 (permalink)  
Antiguo 24/09/2004, 12:19
JPC
 
Fecha de Ingreso: septiembre-2004
Mensajes: 3
Antigüedad: 19 años, 6 meses
Puntos: 0
Gracias a todos !!!!

Pues lo he leido en varios sitios, desde un libro de ayuda de Anaya hasta en páginas web, la verdad es que es un poco desconcertante, primero te explican lo que es una cookie y como funciona, cosa que entiendo perfectamente, luego te dicen que no es una manera totalmente correcta ya que el usuario puede tenerlas desactivadas en su navegador y despues te hablan de las sessiones.

Hice pruebas con cookies en mi pc al principio y no me funcionaron bien, pero hombre si los foros me identifican perfectamente, y estoy dado de alta en varios, un de ellos en mi propia web (foro phpbb2) es que alguna manera tienen y como la ignorancia es muy atrevida pensaba que era de una manera distinta a la de las cookies.

De nuevo gracias a todos, deduzco que el camino correcto es con cookies, lo cual me tranquiliza, trabajaré en eso y si tengo alguna duda puntual recurrire a vosotros.... ... si me lo permitis claro.

Saludos
JPC
  #8 (permalink)  
Antiguo 24/09/2004, 12:34
Avatar de jpinedo
Colaborador
 
Fecha de Ingreso: septiembre-2003
Ubicación: Lima, Perú
Mensajes: 3.120
Antigüedad: 20 años, 6 meses
Puntos: 41
Claro... lo que tienes que hacer es advertir al usuario que algunas de las funcionalidades como la típica "recordarme" utilizan cookies y que las debe tener activadas... o tener a tu web en su lista de sitios de confianza.

Saludos
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 07:01.