Foros del Web » Programando para Internet » PHP »

usuario online

Estas en el tema de usuario online en el foro de PHP en Foros del Web. estoy intentando hacer estilo red social!!! y quisiera que me ayudaran con algo que no tengo idea de como hacerlo!! yo quiero que cada usuario ...
  #1 (permalink)  
Antiguo 25/02/2013, 13:46
 
Fecha de Ingreso: febrero-2013
Mensajes: 115
Antigüedad: 11 años, 2 meses
Puntos: 5
Pregunta usuario online

estoy intentando hacer estilo red social!!! y quisiera que me ayudaran con algo que no tengo idea de como hacerlo!! yo quiero que cada usuario de mi pagina vea si sus amigos estan conectados... cosa de que puedan hablar en vivo por chat o algo asi!!!

yo he estado haciendo mi pagina con dreamweaver y solo se un poco de php, html y javascript... pero quisiera que me den una idea de como hacerlo!!!! para yo realizarlo!!! les doy las gracias de antemano!!!!
  #2 (permalink)  
Antiguo 25/02/2013, 13:54
Avatar de stramin  
Fecha de Ingreso: marzo-2008
Ubicación: Cubil felino
Mensajes: 1.652
Antigüedad: 16 años, 1 mes
Puntos: 336
Respuesta: usuario online

a medida que naveguen en la web envía la fecha actual a un campo en la tabla de los usuarios llamado "online", de este modo sabrás cuando fue el último movimiento del usuario, luego cuando muestres a los amigos muestra "online" solo si esa fecha es mayor a la actual menos 30 minutos o algo así

Saludos!
__________________
El objetivo de este foro es orientar al usuario como un favor y no como una obligación.

Yo soy de los que dan puntos por aporte :D
  #3 (permalink)  
Antiguo 25/02/2013, 14:14
 
Fecha de Ingreso: febrero-2013
Mensajes: 115
Antigüedad: 11 años, 2 meses
Puntos: 5
Respuesta: usuario online

pero como podria hacer que este se cambie constantemente???

porque en vez de que se cambie constantemente podría hacerlo cuando inicie sesión y cuando se desconecte!!! verdad??? y asi me muestra la ultima vez que inicio sesion!!! bueno entiendo que tendre que crear una o dos filas en la tabla del usuario para que se guarde cuando inicio y cuando se desconecto!!! y si la fecha cuando inicio es mayor a la fecha cuando se desconecto mostraria que esta conectado y viceversa!!!! me equivoco???

lo que todavia no entiendo como hacer que se manden os valores!!! usted que tiene mas experiencia que yo me podria decir si la teoria que tengo esta correcta y me podria dar una idea de como hacer que se cambie el valor constantemente??
  #4 (permalink)  
Antiguo 25/02/2013, 14:45
Avatar de stramin  
Fecha de Ingreso: marzo-2008
Ubicación: Cubil felino
Mensajes: 1.652
Antigüedad: 16 años, 1 mes
Puntos: 336
Respuesta: usuario online

con un campo basta, actualiza la fecha en cada pagina navegada, no solo al iniciar sesión.

Al cerrar sesión podrías dejarla en 0 o NULL.

para cambiar el valor constantemente agrega en cada pagina algo asi como esto:

"UPDATE usuarios SET online=NOW() WHERE id=".$_SESSION['usuario']

y bueno al desloguear:

"UPDATE usuarios SET online=0 WHERE id=".$_SESSION['usuario']
__________________
El objetivo de este foro es orientar al usuario como un favor y no como una obligación.

Yo soy de los que dan puntos por aporte :D
  #5 (permalink)  
Antiguo 25/02/2013, 15:57
 
Fecha de Ingreso: febrero-2013
Mensajes: 115
Antigüedad: 11 años, 2 meses
Puntos: 5
Respuesta: usuario online

ok!!! entonces intentare y escribo si me funciono!!!!
  #6 (permalink)  
Antiguo 25/02/2013, 15:58
 
Fecha de Ingreso: febrero-2013
Mensajes: 115
Antigüedad: 11 años, 2 meses
Puntos: 5
Respuesta: usuario online

ah!!! por cierto!!! muchisimas gracias....
  #7 (permalink)  
Antiguo 25/02/2013, 16:55
Avatar de jonni09lo
Colaborador
 
Fecha de Ingreso: septiembre-2011
Ubicación: Estigia
Mensajes: 1.471
Antigüedad: 12 años, 7 meses
Puntos: 397
Respuesta: usuario online

Cita:
Iniciado por stramin Ver Mensaje
con un campo basta, actualiza la fecha en cada pagina navegada, no solo al iniciar sesión.

Al cerrar sesión podrías dejarla en 0 o NULL.

para cambiar el valor constantemente agrega en cada pagina algo asi como esto:

"UPDATE usuarios SET online=NOW() WHERE id=".$_SESSION['usuario']

y bueno al desloguear:

"UPDATE usuarios SET online=0 WHERE id=".$_SESSION['usuario']
Si es para hacerlo en PHP "puro" a esto le veo varios inconvenientes, aunque claro hay que partir del hecho de que es lo que quiere horusorion ya que si es en tiempo "real" hay varias formas, una de ellas es el long polling, pero este tiene sus problemas para aplicaciones enormes.

stramin que pasa si el usuario no se desloguea si no que solo cierra el navegador, se reicinicia el computador etc, etc?

Lo que propones de los 30 minutos es una buena opcion, pero pregunto que opcion es lo que quiere horusorion?

Si es tiempo real, le aconsejo que investigue sobre node.js, si no, mientras tanto el long polling o la opcion del colega tambien es servible

Saludos
__________________
Haz preguntas inteligentes-Como ser Hacker
No hacer preguntas por mensaje privado. No sólo no es inteligente sino que es egoísta.
  #8 (permalink)  
Antiguo 26/02/2013, 09:44
Avatar de stramin  
Fecha de Ingreso: marzo-2008
Ubicación: Cubil felino
Mensajes: 1.652
Antigüedad: 16 años, 1 mes
Puntos: 336
Respuesta: usuario online

Cierto, si por algún motivo el usuario no se desloguea solo queda lo de los 30 minutos (o el tiempo que se quiera poner), pero no es en tiempo real.

Usar un js que esté comprobando que el usuario esté conectado como menciona jonni09lo sería mejor, sobretodo si estás haciendo algo como una red social, donde lo ideal es saber el momento exacto en que alguien se desconecta y la verdad no es tan difícil de hacer con un poco de ajax.

En mi caso yo lo haría con ajax (ya sea js puro o con jQuery)

Lo primero sería ejecutar una consulta cuando el usuario cierre la página que deje la sesion en 0 usando onbeforeunload().

Lo segundo sería hacer un script cíclico que este comprobando que el usuario sigue ahí con setInterval().

luego de esto tendrías que cambiar lo de los 30 minutos por 15 segundos (un margen de error por si el usuario tiene conexión lenta o algo así).
__________________
El objetivo de este foro es orientar al usuario como un favor y no como una obligación.

Yo soy de los que dan puntos por aporte :D
  #9 (permalink)  
Antiguo 26/02/2013, 17:20
 
Fecha de Ingreso: febrero-2013
Mensajes: 115
Antigüedad: 11 años, 2 meses
Puntos: 5
Respuesta: usuario online

hola amigos!!! en realidad quisiera algo como lo que propone jonni09lo pero lo que pasa es lo siguiente!!! yo he intentado utilizar ajax y lquery pero tengo problemas para utilizar la libreria!!1 puesto que no tengo internet!!! yo me conecto desde otra maquina para hacer mis investigaciones y para postear alguna duda que tenga!!! yo me habia bajado un tutorial de jquery y no pude hacerlo porque no pude hacer que me reconociera la libreria!!!!

yo se que con jquery o ajax hacer una pagina es mucho mejor!!! claro que un poco mas complicado pero mejor!!!

tambien intente instalar una extencion al dreamweaver y no me la reconcia!!! jejejeje!!! sinceramente yo estoy salado!!! llevo mucho tiempo haciendo mi web!!!! pero igual me emosiona porque quiero aprender!!!!

todo lo que se lo he aprendido de internet!!! y fijense estoy por lograr podria decirse una mini red social!!!!

sera que me ayudan con este problema???

como puedo utilizar la libreria de jquery o ajax sin internet???
  #10 (permalink)  
Antiguo 26/02/2013, 17:23
 
Fecha de Ingreso: febrero-2013
Mensajes: 115
Antigüedad: 11 años, 2 meses
Puntos: 5
Respuesta: usuario online

bueno amigos... estuve investigando sobre node.js y me di cuenta que es algo asi como jquery...jejeje!!!! vere como lo utilizo para ver si aprendo!!!! pero igual si me ayudan con esto se lo agradeceria!!!!
  #11 (permalink)  
Antiguo 27/02/2013, 07:31
Avatar de stramin  
Fecha de Ingreso: marzo-2008
Ubicación: Cubil felino
Mensajes: 1.652
Antigüedad: 16 años, 1 mes
Puntos: 336
Respuesta: usuario online

Hola horusorion.

La verdad eso de que ajax y jquery es más complicado es solo un mito, la verdad lo hacen todo mucho más fácil!

Comentas que tienes problemas para usar las librerias por que no tienes internet, sin embargo jquery y ajax funcionan localmente, por lo que no necesitas internet, todo lo que debes hacer es incluirlas en tu página web y empezar a usarlas.

Puedes descargar jquery desde casi cualquier parte, solo busca por jquery en google.

Página: http://jquery.com/

para usar ajax solo escribes ajax(), puedes ver como usarlo en la página de jquery.

ajax: http://api.jquery.com/jQuery.ajax/

creeme, es muy fácil, el slogan de jquery es "write less, do more" (Escribe menos, haz mas)
__________________
El objetivo de este foro es orientar al usuario como un favor y no como una obligación.

Yo soy de los que dan puntos por aporte :D
  #12 (permalink)  
Antiguo 27/02/2013, 13:58
 
Fecha de Ingreso: febrero-2013
Mensajes: 115
Antigüedad: 11 años, 2 meses
Puntos: 5
Respuesta: usuario online

yo ya lo descargue!!!! pero cuando y lo pegue en la carpeta de la pagina y luego mi pagina la vincule con la libreria... pero a la hora de hacer los script y mostrar las funciones en mi pagina!! por lo menos si hago un alert... no se ve en la pagina!!! pero lo volvere a intentar!!! para ver si se me da!!!! jejeje!!! muchas gracias!!!

Etiquetas: html, usuario
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 12:12.