Hoje, o editor compartilhará com você a introdução de como restringir o mesmo nome de usuário de fazer login ao mesmo tempo. Amigos interessados aprenderão sobre isso com o editor!
Minha solução para esse problema é que o usuário tem um problema de intervalo de tempo ativo. Aqueles que excedem esse intervalo de tempo ativo podem ser considerados offline, e o último poderá fazer login. Se este não fizer login, isso não significa que o primeiro precisa fazer login novamente. Porque a sessão dele ainda está lá. Só pode ser que, quanto menor a configuração do tempo, mais preciso é e não pode ser absoluto.
O código é publicado para referência pelo autor.
Função checkonline () dim ip, rsprv, sql, prvdbstateprvdbstate = falseif dbstate = false thendBopen () prvdbstate = trueend ifset rsprv = server.createBject ("adodb.recordset") se sessão ("username") = " & "'" rsprv.open sql, conn, 1,3if rsprv.eof thenrsprv.addnewsprv ("sessionId") = session.sessionIdrspr ("groupChargelv") = -1rspr ("lasttime") = () rspr ("userip") 0rsprv ("userwhere") = request.servervariables ("http_referer") elsersprv ("userwhere") = request.servervariables ("http_referer") rsprv ("onLineTime") = request.SerVariAbres ") rsPrv("OnLineTime") + DateDiff("n",rsPrv("LastActTime"),Now())rsPrv("LastActTime") = Now()End IfrsPrv.UpdatersPrv.Close()'response.Write "notlogin"Else'response.Write "logined"Sql="select * from [Online] where UserName='"& Sessão ("nome de usuário") e "'" rsprv.open sql, conn, 1,3if rsprv.eof thenrsprv.addnewsprv ("sessionId") = session.SessionIdrsPRV ("userName") = ("userName") rSPRV ("groupChargelV") Agora () rsprv ("onLineTime") = 0rsprv ("userip") = getiprsprv ("userwhere") = request.Servervariables ("http_referer" elseif rspr ("SessionId") session.sessionId e "Loginset") (1) = false então O site possui 1 ID e só pode ter 1 login/n, você pode tentar o login mais tarde. DATEDIFF ("N", RSPRV ("LastActTime"), agora ()) rsprv ("lastActTime") = agora () final ifrsprv.updaterrprv.close () final ifset rsprv = nada se datdiff ("s", aplicativo ("onlineTDELETETETETETETE"), agora () INT (Application ("s", "Spumnetentenete"), agora (), agora (), agora (), agora (), agora (), agora (), agora (), agora (), agora (), agora (), agora (), agora (). ThenApplication.lock () Application ("onLineStDelete") = agorapplication.unlock () conn.execute ("Exclua de [online] onde dateiff ('s', lastActTime, agora ())>" & int (application ("checkonlediff") e "") ', delete o hóspede sem o final do X Seconds End ("prvO exposto acima é uma introdução a como restringir o mesmo nome de usuário de fazer login ao mesmo tempo. Eu espero que você possa gostar. Para mais conteúdo, continue prestando atenção ao site do novo canal de tecnologia errada!