Foros del Web » Programando para Internet » PHP »

Usuarios en linea

Estas en el tema de Usuarios en linea en el foro de PHP en Foros del Web. Hola, estoy creando un panel de administrador y usuario para un sitio. Lo que quiero hacer, es que en la pagina de administrador me muestre ...
  #1 (permalink)  
Antiguo 14/04/2006, 19:36
 
Fecha de Ingreso: noviembre-2005
Ubicación: Córdoba - Argentina
Mensajes: 155
Antigüedad: 18 años, 4 meses
Puntos: 1
Usuarios en linea

Hola, estoy creando un panel de administrador y usuario para un sitio. Lo que quiero hacer, es que en la pagina de administrador me muestre cuantos usuarios estan en linea. Pense en hacer, que cada usuario que se logue cambie en la BD un campo que diga conectado o no conectado; o tambien, copiar en otra tabla los usuarios que esten en linea, y que cuando estos se desloguen, borrar esa informacion. Pero el problema es cuando cierran la pagina sin desloguearse, o cambian de sitio web.
Que me recomiendan? Como podria hacerlo?
Cualquier cosa, si no se entiende vuelvo a explicarlo.
Desde ya muchas gracias!
  #2 (permalink)  
Antiguo 14/04/2006, 20:00
Avatar de uamistad  
Fecha de Ingreso: diciembre-2004
Ubicación: Cd. de México
Mensajes: 1.395
Antigüedad: 19 años, 3 meses
Puntos: 1
Cita:
Pense en hacer, que cada usuario que se logue cambie en la BD un campo que diga conectado o no conectado
Mejor usa un campo llamado ultimo_acceso de tipo datetime por ejemplo.

Así, cada que se carga la página haces un query que te muestre la cantidad de usuarios conectados en los últimos 5 minutos, algo como:

Código PHP:
//
$cuantos_usuarios mysql_result(mysql_query("SELECT COUNT(*) FROM usuarios WHERE ultimo_acceso > SUBDATE(NOW(), INTERVAL 5 MINUTE)"),0); 
__________________
"Di no al Internet Explorer" -Proverbio Chino-
  #3 (permalink)  
Antiguo 14/04/2006, 20:11
Avatar de atak  
Fecha de Ingreso: julio-2005
Ubicación: Huancayo
Mensajes: 490
Antigüedad: 18 años, 8 meses
Puntos: 5
De acuerdo Usuarios en Linea

Hola nacho004

En el siguiente Link se trata del tema, tendrias que crear una variable ( contador ) en tu recorrido a la BD.

revisa este Link


Espero que te ayude


Salu2
__________________
. .: El mejor Inicio :. .
  #4 (permalink)  
Antiguo 14/04/2006, 20:20
 
Fecha de Ingreso: noviembre-2005
Ubicación: Córdoba - Argentina
Mensajes: 155
Antigüedad: 18 años, 4 meses
Puntos: 1
ahhh es muy buena idea! y como hago para insertar los datos en ese campo datetime?


Estaba pensando, y ese es un tema que siempre me intereso saber, cuando un usuario se registra, guardo la fecha en un campo varchar de caracteres o uno de ese tipo...

gracias por tu respuesta!!
  #5 (permalink)  
Antiguo 14/04/2006, 20:34
Avatar de uamistad  
Fecha de Ingreso: diciembre-2004
Ubicación: Cd. de México
Mensajes: 1.395
Antigüedad: 19 años, 3 meses
Puntos: 1
Pues en cada uno de tus scripts tendrías que incluir hasta arriba algo como:

if ( usuario está logeado ? )
entonces actualizar el registro de $ultimo_acceso

Así siempre lo tendrás actualizado y puedes mostrar la infomración de los usuarios conectados en los últimos X minutos.
__________________
"Di no al Internet Explorer" -Proverbio Chino-
  #6 (permalink)  
Antiguo 14/04/2006, 20:43
 
Fecha de Ingreso: noviembre-2005
Ubicación: Córdoba - Argentina
Mensajes: 155
Antigüedad: 18 años, 4 meses
Puntos: 1
si si, eso lo capte, yo a lo que me referia es si guardo la fecha con la funcion date() de php o de alguna forma en particular ya que el campo en la BD sera de tipo datetime


gracias!
  #7 (permalink)  
Antiguo 14/04/2006, 20:55
Avatar de uamistad  
Fecha de Ingreso: diciembre-2004
Ubicación: Cd. de México
Mensajes: 1.395
Antigüedad: 19 años, 3 meses
Puntos: 1
Ahhh, sí cuate, lleva su forma particular, es de esta manera:

2006-04-14 21:55:30


(sería el datetime de este momento en Mexico City)
__________________
"Di no al Internet Explorer" -Proverbio Chino-
  #8 (permalink)  
Antiguo 15/04/2006, 02:29
 
Fecha de Ingreso: noviembre-2005
Ubicación: Córdoba - Argentina
Mensajes: 155
Antigüedad: 18 años, 4 meses
Puntos: 1
Cuando guardo una fecha con la funcion time o mktime la guarda en formato unix.... como hago para pasar este formato a por ejemplo 2006/15/04??
  #9 (permalink)  
Antiguo 15/04/2006, 02:41
Avatar de uamistad  
Fecha de Ingreso: diciembre-2004
Ubicación: Cd. de México
Mensajes: 1.395
Antigüedad: 19 años, 3 meses
Puntos: 1
Usando la función date()

//ejemplo
<?
echo
date("D, d M Y H:i:s",time());

//imprime
// Fri, 14 Apr 2006 17:37:06
?>


Para saber más sobre la función date() y convertir a la fecha que desees, usa la ayuda en línea. =)
__________________
"Di no al Internet Explorer" -Proverbio Chino-
  #10 (permalink)  
Antiguo 15/04/2006, 13:01
 
Fecha de Ingreso: noviembre-2005
Ubicación: Córdoba - Argentina
Mensajes: 155
Antigüedad: 18 años, 4 meses
Puntos: 1
muchas gracias! no me habia avivado de darlo formato con date()

Si dudo en algo mas te consulto!! (respecto al tema principal)

Gracias!
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:43.