Foros del Web » Programando para Internet » PHP »

Solo 1 usuario conectado simultaneamente, como lo logro?

Estas en el tema de Solo 1 usuario conectado simultaneamente, como lo logro? en el foro de PHP en Foros del Web. Hola Tengo creado una pagina de miembros, en la cual utilice PHP y MSQL para que puedan conectarse a su area de miembros. Lo que ...
  #1 (permalink)  
Antiguo 19/04/2011, 16:07
 
Fecha de Ingreso: marzo-2011
Mensajes: 9
Antigüedad: 13 años, 1 mes
Puntos: 0
Solo 1 usuario conectado simultaneamente, como lo logro?

Hola

Tengo creado una pagina de miembros, en la cual utilice PHP y MSQL para que puedan conectarse a su area de miembros.

Lo que me gustaria es que nadamas se pueda conectar 1 miembro a la vez, es decir, que si yo me conecto con los datos:

email: [email protected]
contraseña: 12345

Que solamente pueda haber 1 usuario conectado con dichos datos.

** ¿Como puedo hacer esto? Actualmente uso Cookies

** Y tambien me gustaria como hacerle para que cuando el usuario cierre la ventana, automaticamente se termine la cookie.

Gracias de antemano!
  #2 (permalink)  
Antiguo 19/04/2011, 16:21
Avatar de memoadian
Colaborador
 
Fecha de Ingreso: junio-2009
Ubicación: <?php echo 'México'?>
Mensajes: 3.696
Antigüedad: 14 años, 10 meses
Puntos: 641
Respuesta: Solo 1 usuario conectado simultaneamente, como lo logro?

Cookies ahm...

no se, pero yo usaria sessiones, tomalo como un consejo. y si me dices yo quiero usar cookies¡¡¡

lamentablemente no obtendrás respuesta de mi :D
  #3 (permalink)  
Antiguo 19/04/2011, 16:21
Avatar de Carlojas  
Fecha de Ingreso: junio-2007
Ubicación: Shikasta
Mensajes: 1.272
Antigüedad: 16 años, 10 meses
Puntos: 49
Respuesta: Solo 1 usuario conectado simultaneamente, como lo logro?

Que tal rickyplati, dentro de las muchas formas que hay para hacer lo que deseas te paso una pequeña idea: en tu tabla usuario creas un campo de mas que se podria llamar estado. 'ACTIVO' o 'INACTIVO' con estos dos posibles valores, cuando valides los datos del usuario al hacer el login cambias estos estados (ten en cuenta que el estado cambiaria a 'INACTIVO' si el usuario cierra el navegador o abandona la página), lo que debes hacer de acuerdo a como planteas la situacion de no permitir la entrada de un usuario con el mismo nick y el mismo pass es al momento de registrarlo validar esto, que no exista un registro en tu tabla usuario con los datos que estan digitando.
Ahora para lo segundo que preguntas la verdad es que siempre he trabajado con variables de sesion, pero no creo que sea muy complicado hacerlo con cookies. Aqui te paso un enlace para que analizes las posibles soluciones.
Cerrar sesion al cerrar el navegador en PHP


Saludos.
__________________
"SELECT * FROM Mujeres WHERE situacion NOT IN ('CASADAS','CON HIJOS','ATORMENTADAS','CUASI-ENNOVIADAS') AND personalidad <> 'INTENSA'"
  #4 (permalink)  
Antiguo 19/04/2011, 16:22
Avatar de Sourcegeek
Colaborador
 
Fecha de Ingreso: mayo-2009
Ubicación: $mex['B.C.'];
Mensajes: 1.816
Antigüedad: 15 años
Puntos: 322
Respuesta: Solo 1 usuario conectado simultaneamente, como lo logro?

Hola
Para terminar cookies, necesitas usar sesiones (estas se autodestruyen al cerrar el navegador)

Para lo de 1 solo usuario, necesitas tener un campo extra que sea 'conectado'.
Cuando alguien se conecte, tienes que checar si conectado es 0, si es asi, lo conectas y pones a conectado como 1... Al cerrar sesion, pones a conectado como 0...
Es algo simple y eficaz en un 80%, por que? Porque de ninguna forma se puede detectar cuando un usuario cierra el navegador, por lo que si alguien que se logea, cierra su navegador, conectado permanecera como 1 y no podra volver a iniciar sesion.
Para solucionar esto, necesitas tener otro campo en el que guardes la fecha y hora de la ultima accion hecha. Al logearse que cheque si la fecha y hora son mayores a 10 minutos por ejemplo, que pueda entrar
__________________
Buscas desarrollador web? Sourcegeek. Diseño web, Maquetación y Programación
¡Escribe bien! Esto es un foro, no un Facebook para que escribas con los pies
  #5 (permalink)  
Antiguo 19/04/2011, 16:23
Avatar de rikardoz  
Fecha de Ingreso: abril-2011
Ubicación: En mi casa
Mensajes: 165
Antigüedad: 13 años
Puntos: 46
Respuesta: Solo 1 usuario conectado simultaneamente, como lo logro?

http://www.desarrolloweb.com/articulos/cookies-en-php.html

usa este codigo

<?php
setcookie("nombre","probando",0,"/","midominio.com");
?>
  #6 (permalink)  
Antiguo 19/04/2011, 16:27
 
Fecha de Ingreso: enero-2010
Mensajes: 191
Antigüedad: 14 años, 3 meses
Puntos: 7
Respuesta: Solo 1 usuario conectado simultaneamente, como lo logro?

Cita:
Iniciado por rickyplati Ver Mensaje
Hola

Tengo creado una pagina de miembros, en la cual utilice PHP y MSQL para que puedan conectarse a su area de miembros.

Lo que me gustaria es que nadamas se pueda conectar 1 miembro a la vez, es decir, que si yo me conecto con los datos:

email: [email protected]
contraseña: 12345

Que solamente pueda haber 1 usuario conectado con dichos datos.

** ¿Como puedo hacer esto? Actualmente uso Cookies

** Y tambien me gustaria como hacerle para que cuando el usuario cierre la ventana, automaticamente se termine la cookie.

Gracias de antemano!
Crea una tabla con identificadores, donde se guarde, el id del usuario y un "clave temporal" generada al hacer session, utiliza por ejemplo md5(), rand(), unique(), time(), etc para generarla y a ambos lo almacenas en una session, cada vez que pida una pagina comprobas que ese usuario tenga esa clave temporal, sino lo mandas a logearse, si a esos datos en vez de ponerlo en usa sesion lo queres poner en una cookie, tambien esta bien ya que son temporales.
  #7 (permalink)  
Antiguo 19/04/2011, 16:49
 
Fecha de Ingreso: marzo-2011
Mensajes: 9
Antigüedad: 13 años, 1 mes
Puntos: 0
Respuesta: Solo 1 usuario conectado simultaneamente, como lo logro?

Muchas gracias por sus respuestas :D las ire aplicando para desarrollar lo que tenia en mente

Etiquetas: conexion, cookies
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 11:13.