logo 广告
Loading...
 导航 所在位置:论坛首页 -> ┈┋BBSGood专区┋┈ -> BBSGood帮助文档 -> BBSGood论坛如何与其它各个系统进行同步注册和登陆整合
管理员发帖回复

BBSGood论坛如何与其它各个系统进行同步注册和登陆整合

作者:客服1 时间:2007-4-23 18:10:30 收藏 编辑

    目前的很多网站,不只是一个论坛,可能还有其它的系统在同一个网站中运营,BBSGood作为论坛如何与其它系统进行整合呢

    其实官方已经提供了一个接口,接口只有一个文件,即: check.asp,在这个文件中,提供了以下说明:

    调用方法:请将:<Script src=check.asp?passtype=0&username=用户名&password=密码></Script> 代码,按要求加入在另一个程序登陆和修改密码成功的地方。 username参数为用户名,password为密码,passtype=0为password参数未经过md5加密,如果passtype=1则已经经过md5的加密,check.asp的目标位置是放在论坛的根目录

   在这里我详细介绍一下整合的原理:

    1. 对方的程序登陆成功后,会将用户名和密码一时保留在那个登陆成功的页面中。

    2.我们现在要做的是,对方登陆成功后,我们将这个用户名和密码再发送到论坛中,让论坛也用这个用户名和密码去登陆。

    3. 论坛将判断,对方发送过来的用户名和密码是否已经保存在论坛中,如果已经有了,就到对方的数据库中去较验,发送过来的密码是否正确,较验通过后,进入登陆状态。如果论坛还没有这个用户名,那么就到对方的数据库中较验,较验通过后,将这个用户名和密码自动添加到论坛的用户数据库中,并进入登陆状态。

    而check.asp 就起到接收对方登陆成功后,发送过来的用户名和密码的责任,check.asp是通过get的形式来接收数据库,具体参数上面已经介绍。

那么现在我们只要在对方登陆成功的页面,将用户名和密码通过get的形式,调用论坛的check.asp,发送给论坛

调用check.asp有二种方法:

一种是:<Script src=check.asp?passtype=0&username=用户名&password=密码></Script>

第二种是:<Iframe width=0 height=0 src=check.asp?passtype=0&username=用户名&password=密码></Iframe>

我们建议使用第二种

    这一步成功后,注意这时你的数据库连接是错误的,因为默认的论坛数据库连接只能连接论坛数据库,不能连接对方程序的数据库,那么为什么用户名密码都发送过来了,还要设置对方的数据库配置,在这里刚才已经提到了,用户名和密码接收后,是不是正确,是不可信任的,因为是通过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数据库连接参数:数据库名(SqlDatabaseName)、用户密码(SqlPassword)、用户名(SqlUsername)、
        '连接名(SqlLocalName)(本地用local,外地用IP)
        Const OutSqlDatabaseName = "bbsgood"
        Const OutSqlPassword = "sa"
        Const OutSqlUsername = "sa"
        Const OutSqlLocalName = "(local)"
    Else
        '必修改设置三:=============Access数据库设置===========
        '免费用户第一次使用请修改本处数据库地址并相应修改data目录中数据库名称,如:将bbsgood_speed.mdb修改为bbsgood_speed.asp
        Const OutDb="/bbs/data/bbsgood_speed.mdb" '数据库路径
    End IF
end if



·热门回顾

·最新帖子
作者:客服2编辑 删除 引用 第2楼

如果对方是utf8编码,传递过来的用户名要经过 escape函数处理

:<Iframe width=0 height=0 src=check.asp?passtype=0&username=escape(用户名)&password=密码></Iframe>

签名
发帖时间:2008-9-30 11:51:59
第1页 共1页 共1个回复     <<    >>    
快速回复
  • 支持UBB,HTML标签

  • 高级回复

  • 操作选项:评分 加精 解精 奖惩 设专题 设公告 解公告 固顶 总固顶 解固顶 结帖 解结帖 锁帖 解锁 移帖 删帖
      首页 | 购买指南 | 虚拟主机 | 特色介绍 | 下载中心 | 支付方式
    Copyright 2004-2008 BBSGood.com Powered By: BBSGood.Speed Version 5.0
      咨询电话:0575-85513832、0575-85513825(传真)、7*24小时咨询服务:13606552007 不良信息举报中心 浙ICP备05029817号
      业务QQ:38958768、客服QQ1:415896239、客服QQ2:343896043、MSN:jccsxx@hotmail.com