Podemos descubrir quen está en liña ou rexistrado no sistema. Isto tamén presentado como membros activos agora no rodapé de calquera sitio web ou en calquera sistema de login. Isto está integrado en calquera sistema de rexistro de calquera sitio. Imos tentar aprender como un sistema funciona e amosar os nomes (ou o usuario IDs) dos membros activos no sitio web. É parte de calquera sistema onde os membros faga o login co seu ID de usuario e contrasinal.
Como pode comprender os detalles da sesión tras sesión membros son almacenados no lado do servidor e non no cliente final. Entón, quedando os detalles do servidor non é posible, pois os scripts non terán acceso de administrador. Entón, imos tratar de manter un sistema paralelo de saber quen fixo Aquí algúns pasos que tomamos exclusivamente para iso e imos aprender diferentes etapas deste script.
Almacenar a información de login en unha táboa
Cada vez que un membro con éxito Loges en que ha almacenar a información, engadindo un rexistro para a nosa mesa exclusivamente creado para esta finalidade. Chamamos esta táboa como plus_login. El ten cinco campos gardando id de sesión dentro id nome do campo, usrid ID de usuario de almacenamento da rexistrada no enderezo membro, ip do sistema de onde membro teña se conectado, o tempo de rexistro no nome do campo tm e status que será na posición off xa que o membro saír e imos define-lo como ON por defecto. Así, un membro rexistrado no imos gardar todas estas información a través da inserción dun rexistro en que o estado por defecto está configurado para ON. A estrutura da táboa (dump SQL) está dispoñible dentro do arquivo zip descarga a finais deste tutorial.
Actualizando o estado do membro
Temos o estado gardado na nosa mesa plus_login onde temos que definir o estado para ON. Xunto co estado tamén estamos almacenando o tempo de fixo o Agora temos que actualizar ese status para ON e actualizar o novo horario (campo nome tm) cada vez que abre o membro dentro da zona de membro. Mantivemos o código para actualizar o plus_table con novo horario e status para ON dentro do bottom.php páxina. Este bottom.php páxina é chamado por todas as páxinas no final. Esta páxina bottom.php fai tres postos de traballo. En primeiro lugar, actualizar o estado do estado de usuario rexistrado co tempo novo e axustado en ON. Aquí está o código desta primeira etapa.
$ Tm = date ("Ymd H: i: s");
$ Q = mysql_query ("actualización de estado conxunto plus_login = 'ON', tm = '$ tm", onde "$ session [id]" id = ");
Segundo el marcar o estado off para todos os membros que non interagido co sitio web dentro últimos 10 minutos. (Esta é a razón nós estaremos facendo o estado ON e novo horario para cada chamada da páxina do membro). Aquí está o código dentro bottom.php para esta etapa.
$ Gap = 10; valor / Gap / se pode cambiar, é dicir, en minutos.
/ / Imos descubrir o tempo antes dos 10 minutos do tempo presente. / /
$ Tm = date ("Ymd H: i: s", mktime (date ("H"), date ("i") - $ lagoa, date ("s"), date ("m"), date (" d '), date ("Y")));
Aquí está a consulta para facelo
$ Ut = mysql_query ("actualización de estado conxunto plus_login = 'off' onde tm <'$ tm'");
Na terceira etapa, que recolle as identificacións de rexistro membros para os cales o tempo está dentro últimos 10 minutos e estado está axustado en ON. Son o noso rexistrado membros ou que están activos no sitio web. O código que podes ver un Amosando que son activos na sección do sitio (scroll down)
O que ocorre cando un usuario fai logoff
Imos cambiar o estado do sistema para OFF e destruír a sesión. Mantivemos este código dentro páxina de logout.
$ Q = mysql_query ("actualización de estado conxunto plus_login = 'off' onde '$ session [id]" id = ");
O que acontece cando membro non interactúa por máis de 10 minutos?
Podes ver cada vez que calquera páxina é aberta e se a páxina está chamando páxina bottom.php entón todos os usuarios será cambiado ao estado OFF o tm (campo) é inferior a 10 minutos do tempo presente. Entón, se ningún outro membro abriu calquera páxina, a continuación, o estado non vai cambiar para OFF. Se pensas que iso debe ser coidado, entón podes usar un scheduler (vitoria servidor) ou cron para executar a parte de actualización de estado unha vez cada 10 minutos. Comproba a consulta por riba no terceiro paso.
Vendo que están activas na web
Mantivemos o código dentro do arquivo bottom.php, por parte de calquera outra páxina desta páxina pode ser chamado. Podes ver o código dentro desta páxina onde usamos unha consulta simple para recoller o seu ID de usuario para que o estado é ON e tempo de campo (tm) é máis que o tempo presente menos de 10 minutos. A consulta está aquí.
$ Qt = mysql_query ("userid selección de plus_login onde tm> '$ tm' e status = 'ON'");
O descanso é simple exhibición de IDs de usuario, podes ver como amosar o noso titorial exhibición de datos.
Iso é todo, Baixo o arquivo zip co que é o código en liña aquí.













































