• DVBBS修改Cookies 全站共享方法(适合论坛整合


    http://www.7gclub.com/blog/u/2/archives/2007/107.html

    此方法适用于2006年5月23日更新补丁的7.1 SP1

    Dv_ClsMain.Asp文件

    609行左右
    找到
    Response.s(Forum_sn).path=path
    替换为
    Response.s(Forum_sn).path="/"

    Login.Asp文件

    641行左右
    找到
    Response.s(Dvbbs.Forum_sn).path=dvbbs.path
    替换为
    Response.s(Dvbbs.Forum_sn).path="/"
    658行
    Response.s(Dvbbs.Forum_sn).path=Dvbbs.path
    替换为
    Response.s(Dvbbs.Forum_sn).path="/"
    823行
    Response.s(Dvbbs.Forum_sn).path = Dvbbs.path
    替换为
    Response.s(Dvbbs.Forum_sn).path = "/"

    LogOut.Asp文件
    找到28行左右
    Response.s(Dvbbs.Forum_sn).path=Dvbbs.path
    替换为
    Response.s(Dvbbs.Forum_sn).path="/"


    前台使用读取s
    <%
    UserName=Request.s("DvForum")("Username")
    UserClass=Request.s("DvForum")("UserClass")
    %>
    <%
    if Username="" Then
    Response.write "您尚未登陆!"
    Else
    Response.Write " 您好!<Font Color=#FF0000><B>"&UserName&"</B></Font>等级为:"&UserClass&"<img src="/blog/Images/Index_02.gif>";<A href=/Culb/Login.asp>重登陆</a><img src="/blog/Images/Index_02.gif>";<A href=/Culb/Logout.asp>退出登陆</a> "
    End If
    %>


    ==============================================================================

    请教后发现此方法太笨

    可以将蓝色部分简缩为一步

    Dv_ClsMain.Asp文件

    609行左右
    找到
    Response.s(Forum_sn).path=path
    替换为
    Response.s(Forum_sn).path="/"

    Login.Asp文件

    641行左右
    找到
    Response.s(Dvbbs.Forum_sn).path=dvbbs.path
    替换为
    Response.s(Dvbbs.Forum_sn).path="/"
    658行
    Response.s(Dvbbs.Forum_sn).path=Dvbbs.path
    替换为
    Response.s(Dvbbs.Forum_sn).path="/"
    823行
    Response.s(Dvbbs.Forum_sn).path = Dvbbs.path
    替换为
    Response.s(Dvbbs.Forum_sn).path = "/"

    LogOut.Asp文件
    找到28行左右
    Response.s(Dvbbs.Forum_sn).path=Dvbbs.path
    替换为
    Response.s(Dvbbs.Forum_sn).path="/"

    Dv_ClsMain.asp
    找到path = CacheData(26,0)
    改为path = "/"
    ==============
    另一种 方法
    http://www.it130.net/asp-asp.net/217680.htm
    整合全站方法-动网论坛7版用户cookie及登陆全站共享的修改方法
    让动网论坛7版用户cookie及登陆全站共享的修改方法
    以下内容为程序代码:
    让动网论坛7版用户登陆全站共享的修改方法
    ''==============声明及说明==================
    1、本方法适用于动网论坛 DVBbs ver7.0及其以上版本。
    2、本方法依存于动网论坛 DVBbs ver7.0,修改仅限于个人使用,商业使用者请联系动网开发小组以获得授权。
    3、本方法修改使用为个人自愿行为,本人不对任何人自行修改带来的任何结果及后果承担任何责任。

    ''==============声明结束===================== 修改步骤:
    1、修改工具:UltraEdit编辑器
    2、需要修改的文件名称
    本次修改的文件共有三个
    1) inc/Dv_ClsMain.asp
    2) login.asp
    3) logout.asp
    3、修改方法
    1)定义为通用名称
    打开inc/Dv_ClsMain.asp

    这一步的主要目的是将论坛的COOKIE名称定义为通用名称
    在本文件的开头定义变量
    dim mybbsdir
    MyBbsDir = "/club/" ''你论坛所在目录
    Class Cls_Forum
    Rem Const
    找到第28行(增加上两行后就是第31行),本行原文是:
    CacheName=Replace(Replace(Replace(Server.MapPath("index.asp"),"index.asp",""),":",""),"\","")
    改为
    CacheName = "ilovecsw"
    找到第31行(增加上两行后就是第34行),本行原文是:
    Forum_sn = CacheName:Vipuser = False:Boardmaster = False
    改为
    Forum_sn = "ilovecsw"
    2)更改Cookies目录 这一步的主要目的将论坛的cookies目录定义为全局目录,即根目录"/"
    ①打开inc/Dv_ClsMain.asp
    寻找 Response.Cookies(Forum_sn).path=cookiepath
    应该共有三个
    替换为:
    Response.Cookies(Forum_sn).path="/"
    ② 打开login.asp
    寻找 Response.Cookies(DVBbs.Forum_sn).path=DVBbs.cookiepath
    应该共有五个,其中一个是:Response.Cookies(DVBbs.Forum_sn).path = DVBbs.cookiepath(等号两旁有空格)
    替换为:
    Response.Cookies(DVBbs.Forum_sn).path="/"
    ③ 打开logout.asp
    寻找 Response.Cookies(DVBbs.Forum_sn).path=DVBbs.cookiepath 第27行
    应该只有一个
    替换为:
    Response.Cookies(DVBbs.Forum_sn).path="/" 至此,修改完毕,即可以达到cookies全站通用的目的了 3) 更改用户登陆是返回地址
    目的:让从非bbs目录登陆的用户能够返回登陆页
    方法:
    ① 打开login.asp
    找到第125行:
    Dim comeurlname
    If instr(lcase(request("comeurl")),"reg.asp")>0 or instr(lcase(request("comeurl")),"login.asp")>0 or trim(request("comeurl"))="" Then
    comeurlname=""
    comeurl="index.asp"
    Else
    comeurl=request("comeurl")
    comeurlname="<li><a href="&request("comeurl")&">"&request("comeurl")&"</a></li>"
    End If 改为 Dim comeurlname
    If request.serverVariables("http_referer")<>"" and InStr(request.serverVariables("http_referer"),MyBbsDir)>0 Then
    If instr(lcase(request("comeurl")),"reg.asp")>0 or instr(lcase(request("comeurl")),"login.asp")>0 or trim(request("comeurl"))="" Then
    comeurlname=""
    comeurl="index.asp"
    Else
    comeurl=request("comeurl")
    comeurlname="<li><a href="&request("comeurl")&">"&request("comeurl")&"</a></li>"
    End If
    Else
    Response.Redirect request.serverVariables("http_referer")
    End If
    ②打开logout.asp
    寻找第36行
    Response.Redirect DVBbs.Forum_Info(11)
    改为
    If request.serverVariables("http_referer")<>"" and InStr(request.serverVariables("http_referer"),MyBbsDir)>0 Then
    Response.Redirect DVBbs.Forum_Info(11)
    Else
    Response.Redirect request.serverVariables("http_referer")
    End If 好了,修改完了 到了这里,你的整个网站就都可以使用论坛的cookies了,而且登陆和退出时都会自动返回你所在的页面 你可以在其他地方取的COOKIES数据为: Request.Cookies("ilovecsw")("username") ''用户名,对应[dv_user]表的username字段
    Request.Cookies("ilovecsw")("password") ''用户随机密码,对应[dv_user]表的truepassword字段
    Request.Cookies("ilovecsw")("userid") ''用户id,对应[dv_user]表的userid字段 主要修改部分就这么多,其他的目录权限设置等等,请自行解决,谢谢。
     

  • 相关阅读:
    Git远程操作
    696. Count Binary Substrings
    693. Binary Number with Alternating Bits
    821. Shortest Distance to a Character
    345. Reverse Vowels of a String
    89. Gray Code
    数组操作符重载
    C++字符串反转
    马克思的两面性-来自网友
    C++字符串
  • 原文地址:https://www.cnblogs.com/cy163/p/639196.html
Copyright © 2020-2023  润新知