我想用bbsgood程序与其他系统的整合,也就是与同时登陆注册的
我按照如下说的一步的来,但还是整合不了,能把一些步骤或者要注意的地方说下吗?谢谢了
目前的很多网站,不只是一个论坛 ,可能还有其它的系统在同一个网站中运营 ,BBSGood作为论坛 如何与其它系统进行整合呢
其实官方已经提供了一个接口,接口只有一个文件,即: check.asp,在这个文件中,提供了以下说明:
调用方法:请将:<****** src=check.asp?passtype=0&username=用户名&password=密码></******> 代码,按要求加入在另一个程序登陆和修改密码成功的地方。 username参数为用户名,password为密码,passtype=0为password参数未经过md5加密,如果passtype=1则已经经过md5的加密,check.asp的目标位置是放在论坛 的根目录
在这里我详细介绍一下整合的原理:
1. 对方的程序登陆成功后,会将用户名和密码一时保留在那个登陆成功的页面中。
2.我们现在要做的是,对方登陆成功后,我们将这个用户名和密码再发送到论坛 中,让论坛 也用这个用户名和密码去登陆。
3. 论坛 将判断,对方发送过来的用户名和密码是否已经保存在论坛 中,如果已经有了,就到对方的数据库 中去较验,发送过来的密码是否正确,较验通过后,进入登陆状态。如果论坛 还没有这个用户名,那么就到对方的数据库 中较验,较验通过后,将这个用户名和密码自动添加到论坛 的用户数据库 中,并进入登陆状态。
而check.asp 就起到接收对方登陆成功后,发送过来的用户名和密码的责任,check.asp是通过get的形式来接收数据库 ,具体参数上面已经介绍。
那么现在我们只要在对方登陆成功的页面,将用户名和密码通过get的形式,调用论坛 的check.asp,发送给论坛 。
调用check.asp有二种方法:
一种是:<****** src=check.asp?passtype=0&username=用户名&password=密码></******>
第二种是:<****** width=0 height=0 src=check.asp?passtype=0&username=用户名&password=密码></******>
我们建议 使用第二种
这一步成功后,注意 ,这时你的数据库 连接是错误的,因为默认的论坛 数据库 连接只能连接论坛 的数据库 ,不能连接对方程序的数据库 ,那么为什么用户名密码都发送过来了,还要设置对方的数据库 配置,在这里刚才已经提到了,用户名和密码接收后,是不是正确,是不可信任的,因为是通过get方式接收的,所以还要到对方的数据库 中去较验一下的 ,所以你还要在论坛 conn.asp文件中,设置整合的数据库 配置,具体可以打开conn.asp文件,后面有整合对方的数据库 设置注释说明。
在conn.asp中的位置如下:
本帖相关代码
'=======================外部表整合参数设置开始========================== Const isoutuser=0 '如果此项为0那么用户名,密码不使用外部数据库 或表,如果为1,表示整合到其它系统,用户名和密码采用其它系统的表
if isoutuser=1 then '如果使用外部连接表 Const OutDataType=0 '如果此项为0.那么表示使用access 数据库 ,如果此项为1,那么表示采用mssql 数据库 Const User_out="user" '外部数据库 表名 Const UserName_out="username" '外部数据库 用户表,用户字段 Const PassWord_out="password" '外部数据库 用户表,密码字段 Const reg_out="http://www.xxx.com/reg.asp " '外部用户名注册地址 Const userinfo_out="http://www.xxx.com/edit.asp " '外部密码修改地址 Const userlogin_out="http://www.xxx.com/login.asp " '外部帐号登陆地址
If OutDataType = 1 Then '必修改设置二:=================sql 数据库 设置=================== 'sql 数据库 连接参数:数据库 名(sql DatabaseName)、用户密码(sql Password)、用户名(sql Username)、 '连接名(sql LocalName)(本地用local,外地用IP) Const Outsql DatabaseName = "bbsgood" Const Outsql Password = "sa" Const Outsql Username = "sa" Const Outsql LocalName = "(local)" Else '必修改设置三:=============access 数据库 设置=========== '免费用户第一次使用请修改本处数据库 地址并相应修改data目录中数据库 名称,如:将bbsgood_speed.mdb修改为bbsgood_speed.asp Const OutDb="/bbs/data/bbsgood_speed.mdb" '数据库 路径 End IF end if