Hari ini, editor akan berbagi dengan Anda pengenalan cara membatasi nama pengguna yang sama dari masuk pada saat yang sama. Teman yang tertarik akan mempelajarinya dengan editor!
Solusi saya untuk masalah ini adalah bahwa pengguna memiliki masalah interval waktu aktif. Mereka yang melebihi interval waktu aktif ini dapat dianggap offline, dan yang terakhir dapat masuk. Jika yang terakhir tidak masuk, itu tidak berarti bahwa yang pertama perlu masuk lagi. Karena sesi masih ada. Hanya saja semakin kecil pengaturan waktu, semakin akurat, dan tidak bisa absolut.
Kode diposting untuk referensi oleh penulis.
Fungsi checkOnline () redup ip, rsprv, sql, prvdbstatePrvdbstate = falseif dbstate = false thendbopen () prvdbstate = trueEnd ifset rsprv = server.createObject ("adodb.recordset") if Sesi ("username") = "" "" "" "" "" "" "" "" "" "" "" "" "" "" "" "" "" "" "" " & "'" rsprv.open sql, conn, 1.3if rsprv.eof thenrsprv.addnewsprv ("sessionId") = sessionidrsprv ("groupchargelv") = -1rsprv ("lasttacttime") = sekarang () rsprv ("usip") = getsTime ("nowlinime (" getspv ("getsTime") = now () rsprv ("usip") = getsprv ("OntsTime") = Now () rsprv ("" USERIP ") = ONPERSTIME (" 0rsPrv("UserWhere") = Request.ServerVariables("HTTP_REFERER")ElsersPrv("UserWhere") = Request.ServerVariables("HTTP_REFERER")rsPrv("OnLineTime") = Request.ServerVariables("HTTP_REFERER")rsPrv("OnLineTime") = 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='"& Session("UserName") &"'"rsPrv.Open sql,Conn,1,3If rsPrv.Eof thenrsPrv.AddNewsPrv("SessionID") = Session.SessionIDrsPrv("UserName") = Session("UserName")rsPrv("GroupChargeLv") = Session("GroupChargeLv")rsPrv("LastActTime") = Sekarang () rsprv ("onlinetime") = 0rsprv ("useriP") = getiprsprv ("userwhere") = request.servariables ("http_referer") elseif rsprv ("sessionid") sesesi dan aplikasi ("loginset") (1) = falsin kemudian falsin. Di tempat lain, situs web ini memiliki 1 ID dan hanya dapat memiliki 1 login/N Anda dapat mencoba login nanti. Dateff ("n", rsprv ("lastacttime"), now ()) rsprv ("lastacttime") = now () end ifrsprv.updatersprv.close () end ifset rsprv = nothing dateff ("s", "onlineLastDelete"), sekarang () ()> Int ("s", "onlineelastDelete"), now () ()> Int ("S", "OnlineLastDelete"), Now () ()> Int ("S", "OnlineStDelete"), Now () ()> Inticif Aplikasi aplikasi.lock () ("onlineLastDelete") = nowApplication.unlock () conn.execute ("hapus dari [online] di mana dateff ('s', lastacttime, now ())>" & int ("centang -function -funch") 'delete dompte = function endbte = funche endbte =Di atas adalah pengantar cara membatasi nama pengguna yang sama dari masuk pada saat yang sama. Saya harap Anda bisa menyukainya. Untuk konten lebih lanjut, silakan terus perhatikan situs web saluran teknologi baru yang salah!