我的做法是,使用者在原來的登入系統登入一次,記錄使用者名稱和密碼明碼,然後在資料庫裡面新增一個論壇使用者(注意密碼用32位元的MD5),然後再用雪人的方法整合同步登入就可以了函數可以參考:
複製代碼代碼如下:
<%
'註冊論壇使用者,參數說明
'username 使用者登入名稱
'password 使用者有登入密碼
'groupid 用戶組id,高級會員,用戶組id為17;正式會員,用戶組id為18;普通會員,則用戶組id為10
'email,realname,mobile,phone 電子郵件,真名,手機,電話
sub regbbsuser(username,password,groupid,email,realname,mobile,phone)
'資料庫連接
MM_conn_bbs_STRING=Driver={SQL Server};server=SURUI;uid=sa;pwd=sa;database=ntylswbbs;
Set connbbs=Server.Createobject(ADODB.Connection)
connbbs.open MM_conn_bbs_STRING
'檢查使用者名稱是否存在
checkuser=select * from dnt_users where username='&username'
set checkuserrs=connbbs.execute(checkuser)
if not checkuserrs.eof then
haveuser=true
else
haveuser=false
end if
'如果用戶不存在,則增加論壇用戶
if haveuser=false then
'更新dnt_users(使用者資訊)表
sql1=select * from dnt_users
set rs1=server.createobject(ADODB.Recordset)
rs1.open sql1,connbbs,1,3
rs1.addnew
rs1(username)=username
rs1(password)=md532(password)
rs1(groupid)=groupid
rs1(email)=email
rs1.update
rs1.close
'讀取剛建立使用者的id
sql2=select * from dnt_users where username='&username'
set rs2=server.createobject(ADODB.Recordset)
rs2.open sql2,connbbs,1,1
useruid=rs2(uid)
rs2.close
'更新dnt_userfields(使用者相關資訊)表
sql3=select * from dnt_userfields
set rs3=server.createobject(ADODB.Recordset)
rs3.open sql3,connbbs,1,3
rs3.addnew
rs3(uid)=useruid
if realname<> then
rs3(realname)=realname
end if
if mobile<> then
rs3(mobile)=mobile
end if
if phone<> then
rs3(phone)=phone
end if
rs3.update
rs3.close
'更新dnt_statistics(論壇狀態資訊)表
sql4=select * from dnt_statistics
set rs4=server.createobject(ADODB.Recordset)
rs4.open sql4,connbbs,1,3
rs4(totalusers)=rs4(totalusers)+1
rs4(lastusername)=username
rs4(lastuserid)=useruid
rs4.update
rs4.close
end if
connbbs.close
end sub
'呼叫函數
call regbbsuser(asp,123456789,18,[email protected],啦啦啦,13580351626,0207235803)
%>