Idea: When logging on to a website, write cookies and read these cookies when accessing the Forum. If they exist, query the user table on the Internet, then, write your own cookies and sessions on the Internet. The specific method is as follows: 1. the User table is to be synchronized. 2. log on to the website created by Asp.net and write a cookie. response. cookies ["bhj"]. path = "/"; // implements full-site cookie sharing. If the cookie is not in the same domain, it is set to the same domain response. cookies ["bhj"] ["dusername"] = "your username"; response. cookies ["bhj"] ["dpassword"] = "your password "; // encryption ............................. and so on. I will not write any more here. 3. three files must be modified for all websites that implement COOKIE: ① open INC/dv_clsmain.asp
Find response. Cookies (forum_sn). Path = cookiepath
There should be a total of 1
Replace:
Response. Cookies (forum_sn). Path = "/" ② open login. asp
Find response. Cookies (dvbbs. forum_sn). Path = dvbbs. cookiepath
There should be three in total, one of which is: Response. Cookies (dvbbs. forum_sn). Path = dvbbs. cookiepath (there are spaces on both sides of the equal sign)
Replace:
Response. Cookies (dvbbs. forum_sn). Path = "/" ③ open logout. asp
Find response. Cookies (dvbbs. forum_sn). Path = dvbbs. cookiepath row 26th
There should be only one
Replace:
Response. Cookies (dvbbs. forum_sn). Path = "/" 4. Create a writecookies. asp file in the dynamic root directory. Set the following section Code Copy in <% SESSION ("flag") = empty
Response. Cookies ("statuserid") = request. Cookies ("statuserid ")
Dim chinausername, chinapassword, truepasswordchina
Chinausername = trim (request. Cookies ("bhj") ("dusername "))
Chinapassword = trim (request. Cookies ("bhj") ("dpassword "))
If chinausername <> "" And chinapassword <> "" then
If chkchina228login (chinausername, chinapassword, 1, chinacreatepass (), 1) then
End if
End if
Function chkchina228login (chinausername, chinapassword, usercookies, truepasswordchina, userhidden)
Dim rsuser, article, userclass, titlepic
Dim lastip, userlastlogin
Dim groupid, classsql, foundgrade
Dim regname, imyuserinfo
Dim SQL, sqlstr, olduserhidden
SQL = "select userid, username, userpassword, useremail, userpost, usertopic, usersex, userface, userwidth, userheight, joindate, lastlogin, lastlogin as cometime, lastlogin as activetime, userlogins, lockuser, userclass, usergroupid, usergroup, rule, userep, usercp, userpower, userbirthday, userlastip, userdel, userisbest, userhidden, usermsg, rule, usermobile, titlepic, usertitle, truepassword, usertoday, usermoney, userticket, followmsgid, vip_startime, vip_endtime, userid as boardid"
SQL = SQL & "from [dv_user] Where username = '" & chinausername &"'"
Set rsuser = dvbbs. Execute (SQL)
If rsuser. EOF and rsuser. bof then
Chkchina228login = false
Exit Function
Else
If rsuser ("lockuser") = 1 or rsuser ("usergroupid") = 5 then
Chkchina228login = false
Exit Function
Else
If trim (chinapassword) = trim (rsuser ("userpassword") then
Chkchina228login = true
Dvbbs. userid = rsuser ("userid ")
Regname = rsuser ("username ")
Article = rsuser ("userpost ")
Userlastlogin = rsuser ("cometime ")
Userclass = rsuser ("userclass ")
Groupid = rsuser ("usergroupid ")
Olduserhidden = rsuser ("userhidden ")
Titlepic = rsuser ("usertitle ")
If article <0 then article = 0
Set dvbbs. usersession = dvbbs. recordsettoxml (rsuser, "userinfo", "XML ")
Dvbbs.usersession.doc umentelement. selectsinglenode ("userinfo/@ cometime"). Text = now ()
Dvbbs.usersession.doc umentelement. selectsinglenode ("userinfo/@ activetime"). Text = dateadd ("S",-3600, now ())
Dvbbs.usersession.doc umentelement. selectsinglenode ("userinfo/@ boardid"). Text = 0
Extends umentelement. selectsinglenode ("userinfo"). Attributes. setnameditem (dvbbs. usersession. createnode (2, "isuserpermissionall", ""). Text = dvbbs. founduserpermission_all ()
If olduserhidden <> clng (userhidden) then
Dvbbs.usersession.doc umentelement. selectsinglenode ("userinfo/@ userhidden"). Text = userhidden
Dvbbs. Execute ("Update dv_user set userhidden =" & userhidden & "where userid =" & dvbbs. userid)
End if
Dim BS
Set BS = dvbbs. getbrowser ()
Dvbbs.usersession.documentelement.appendchild(bs.doc umentelement)
If enabledsession then Session (dvbbs. cachename & "userid") = dvbbs. usersession. xml
Else
Chkchina228login = false
Exit Function
End if
End if
End if
If chkchina228login then
Set rsuser = dvbbs. Execute ("select minarticle, issetting, parentgid, usertitle, grouppic from dv_usergroups where usergroupid =" & groupid)
If not (rsuser. EOF and rsuser. bof) then
If rsuser (2) = 1 or rsuser (2) = 2 or rsuser (2) = 4 or rsuser (2) = 5 then
'The user level is not as follows Article Upgrade: the user is a system or special or multi-attribute group.
Userclass = rsuser (3)
Titlepic = rsuser (4)
Foundgrade = true
End if
End if
If not foundgrade then
'If the user does not belong to a system or special or multi-attribute group, the user group (level) is automatically updated based on the number of articles that the user belongs to the registered user group)
Set rsuser = dvbbs. Execute ("select top 1 usertitle, grouppic, usergroupid from dv_usergroups where parentgid = 3 and minarticle <=" & article & "order by minarticle DESC, usergroupid ")
If not (rsuser. EOF and rsuser. bof) then
Userclass = rsuser (0)
Titlepic = rsuser (1)
Groupid = rsuser (2)
Foundgrade = true
End if
End if
Set rsuser = nothing
If not foundgrade then
Chkchina228login = false
Exit Function
End if
SQL = "Update [dv_user] Set lastlogin =" & sqlnowstring & ", userlogins = userlogins + 1, userlastip = '" & lastip &"', userclass = '"& userclass &"', titlepic = '"& titlepic &"', usergroupid = "& groupid &", truepassword = '"& truepasswordchina &" 'where userid = "& dvbbs. userid
Dvbbs. Execute (SQL)
Dim statuserid, usersessionid
Statuserid = dvbbs. checkstr (TRIM (request. Cookies (dvbbs. forum_sn) ("statuserid ")))
If isnumeric (statuserid) = 0 or statuserid = "" then
Statuserid = Replace (dvbbs. usertrueip ,".","")
Usersessionid = Replace (startime ,".","")
If isnumeric (statuserid) = 0 or statuserid = "" Then statuserid = 0
Statuserid = ccur (statuserid) + ccur (usersessionid)
End if
Statuserid = ccur (statuserid)
Dvbbs. Execute ("delete from dv_online where id =" & statuserid &"")
If trim (chinausername) <> trim (dvbbs. membername) then
Response. Cookies (dvbbs. forum_sn) ("username") = ""
Response. Cookies (dvbbs. forum_sn) ("password") = ""
Response. Cookies (dvbbs. forum_sn) ("userclass") = ""
Response. Cookies (dvbbs. forum_sn) ("userid") = ""
Response. Cookies (dvbbs. forum_sn) ("userhidden") = ""
Response. Cookies (dvbbs. forum_sn) ("usercookies") = ""
Dvbbs. Execute ("delete from dv_online where username = '" & dvbbs. membername &"'")
End if
If isnull (usercookies) or usercookies = "" Then usercookies = "0"
Select case usercookies
Case "0"
Response. Cookies (dvbbs. forum_sn) ("usercookies") = usercookies
Case 1
Response. Cookies (dvbbs. forum_sn). expires = date + 1
Response. Cookies (dvbbs. forum_sn) ("usercookies") = usercookies
Case 2
Response. Cookies (dvbbs. forum_sn). expires = date + 31
Response. Cookies (dvbbs. forum_sn) ("usercookies") = usercookies
Case 3
Response. Cookies (dvbbs. forum_sn). expires = date + 365
Response. Cookies (dvbbs. forum_sn) ("usercookies") = usercookies
End select
Response. Cookies (dvbbs. forum_sn). Domain = "china228.com"
Response. Cookies (dvbbs. forum_sn) ("statuserid") = statuserid
Response. Cookies (dvbbs. forum_sn) ("username") = regname
Response. Cookies (dvbbs. forum_sn) ("password") = truepasswordchina
Response. Cookies (dvbbs. forum_sn) ("userclass") = userclass
Response. Cookies (dvbbs. forum_sn) ("userid") = dvbbs. userid
Response. Cookies (dvbbs. forum_sn) ("userhidden") = 2
Rem clears the number of uploaded images
Response. Cookies ("upnum") = 0
Dvbbs. membername = dvbbs. checkstr (regname)
Dvbbs.usersession.doc umentelement. selectsinglenode ("userinfo/@ truepassword"). Text = truepasswordchina
Dvbbs. memberclass = dvbbs. checkstr (userclass)
Dvbbs. usergroupid = groupid
End if
End Function
Function chinacreatepass () 'random password allocated by the System
Dim ran, I, lengthnum
Lengthnum = 16
Chinacreatepass = ""
For I = 1 to lengthnum
Randomize
Ran = CINT (RND * 2)
Randomize
If ran = 0 then
Ran = CINT (RND * 25) + 97
Chinacreatepass = chinacreatepass & ucase (CHR (RAN ))
Elseif ran = 1 then
Ran = CINT (RND * 9)
Chinacreatepass = chinacreatepass & Ran
Elseif ran = 2 then
Ran = CINT (RND * 25) + 97
Chinacreatepass = chinacreatepass & CHR (RAN)
End if
Next
End function %> 5. Open INC/Const. asp and add <! -- # Include file = "../writecookies. asp" -->
The complete Const. ASP code is
<%
set myboardonline = new cls_useronlne
dvbbs. getforum_setting
dvbbs. checkuserlogin
%> 6. logout of the dynamic network forum. ASP (logout function) files are opened to the following content: response. cookies (dvbbs. forum_sn ). path = "/" response. cookies (dvbbs. forum_sn) ("username") = "" response. cookies (dvbbs. forum_sn) ("password") = "" response. cookies (dvbbs. forum_sn) ("userclass") = "" response. cookies (dvbbs. forum_sn) ("userid") = "" response. cookies (dvbbs. forum_sn) ("userhidden") = "" response. cookies (dvbbs. forum_sn) ("usercookies") = "" it is obvious that the above code is used to leave the cookie empty. Add a few lines below, response. cookies ("bhj") ("dusername") = "" response. cookies ("bhj") ("dpassword ") = ""...................................... these lines are used to clear the cookie information you write.