Hoy, el editor compartirá con usted la introducción de cómo restringir el mismo nombre de usuario al iniciar sesión al mismo tiempo. ¡Los amigos interesados lo aprenderán con el editor!
Mi solución a este problema es que el usuario tiene un problema de intervalo de tiempo activo. Aquellos que exceden este intervalo de tiempo activo pueden considerarse fuera de línea, y este último puede iniciar sesión. Si este último no inicia sesión, no significa que el primero necesite iniciar sesión nuevamente. Porque su sesión todavía está allí. Solo puede ser que cuanto más pequeña sea la configuración del tiempo, más precisa es y no puede ser absoluto.
El código es publicado como referencia por el autor.
Function checkOnline () dim ip, rsprv, sql, prvdbstatePrvvdbstate = falseif dbstate = false thendBopen () prvdbstate = trueend ifset rsprv = server.createObject ("ADODB.RecordSet") si la sesión ("userame") = "thensql =" Select * de [en línea] Where [en línea] & "'" rsprv.open sql, Conn, 1,3if rsprv.eof entoncesrsprv.addnewsprv ("sessionId") = session.sessionIdrsprv ("groupChargelv") = -1rsprv ("lasttime") = now () rsPrv ("usip") = getiprsSvv ("onlinEtime") 0RSPRV ("UserWhere") = request.ServerVariAbles ("http_referer") elsersprv ("userwhere") = request.ServerVariAners ("http_referer") rsPrV ("onlineTime") = request.serverVariAners ("http_referer") rsPRV ("oneLineMe") rsprv ("" onlineTime ") + caletizado (" n ", rsprv (" lastActtime "), ahora ()) rsprv (" lasttimeTime ") = ahora () end ifrsprv.updatersprv.cLose () Session ("UserName") & "'" rsprv.open sql, Conn, 1,3IF rsprv.eof entoncesrsprv.addnewsprv ("sessionId") = session.sessionIdRSPRV ("username") = session ("username") rssspRargelv ") = session (" groupgelv ") RSPRES Now()rsPrv("OnLineTime") = 0rsPrv("UserIP")= GetIPrsPrv("UserWhere") = Request.ServerVariables("HTTP_REFERER")ElseIf rsPrv("SessionID") Session.SessionID And Application("LoginSet")(1) = False ThenInfoTo "LoginOut.asp","This account has been logged in elsewhere, the El sitio web tiene 1 ID y solo puede tener 1 inicio de sesión/N, puede intentar iniciar sesión más tarde. Datediff ("n", rsprv ("lastActtime"), ahora ()) rsprv ("lastActtime") = ahora () end ifrsprv.updatersprv.close () end ifset rsprv = no noteoif datediff ("s", aplicación ("onlinelastDelete") Entoncesapplication.lock () aplicación ("onlinElastDelete") = NowApplication.unlock () conn.execute ("delete de [en línea] donde dateiff ('s', lastActtime, ahora ())>" & int (application ("checkonLinElineLing") & "") 'Eliminar el invitado sin actividad para X segundos final ifif prvdbstate = verdadero dBcLose (() FuncionLo anterior es una introducción a cómo restringir el mismo nombre de usuario al iniciar sesión al mismo tiempo. Espero que te pueda gustar. Para obtener más contenido, ¡continúe prestando atención al sitio web del nuevo canal de tecnología incorrecto!