ASP 包含文件中的路径问题和使用单一数据库连接文件的解决方案

来源:asp之家 时间:2011-04-07 10:35:00 

啥都不说了,直接奉献原代码

代码如下:


'==========注意=============================================== 
' 1、网站所在文件夹的名字不能为“root” 
' 2、网站所在文件夹的名字,物理路径中不允许出现重复此文件夹名,如F:\t\t,t为网站所在文件夹名,这种情况会出错 
'============================================================= 
Dim dbPath,dbName,Db,ConnStr,WebSiteFolderName 
on error resume next 

WebSiteFolderName="WeldSiteBuilder" 
dbPath = "_sitedata\" '注意是反斜杠,且只有末尾有 
dbName = "acteedata.mdb" '数据库名称 
Db=GetSitePhysicalPath(WebSiteFolderName) & dbPath & dbName 
'response.Write("当前数据库物理路径:"&server.mappath(db)) 
'response.Write("<hr>") 
'response.Write("当前请求访问的页面路径:"&request.ServerVariables("URL")) 
'response.Write("<hr>") 
'response.Write("当前站点的根路径:"&request.ServerVariables("APPL_PHYSICAL_PATH")) 
'response.Write("<hr>") 
'response.Write("当前站点的路径状况:"&request.ServerVariables("APPL_MD_PATH")) 
'response.Write(db) 
'response.End() 
'====================== 
Set conn=Server.CreateObject("ADODB.Connection") 
ConnStr="Provider=Microsoft.Jet.OLEDB.4.0;Data Source="&Db 
Conn.Open ConnStr 
If Err Then 
Err.Clear 
Set Conn = Nothing 
Response.Write "数据库连接错误!" 
Response.End 
End If 

Sub CloseConn() 
conn.close 
set conn=nothing 
end Sub 

'获取网站所在目录的绝对路径(带“\”号) 
Function GetSitePhysicalPath(WSFN) 
dim APPL_MD_PATH,APPL_MD_PATHArray,Path,WSPP 
WSPP=request.ServerVariables("APPL_PHYSICAL_PATH")'默认网站是在根目录下运行 

APPL_MD_PATH=request.ServerVariables("APPL_MD_PATH") 
APPL_MD_PATHArray=split(APPL_MD_PATH,"/") 
Path=APPL_MD_PATHArray(UBound(APPL_MD_PATHArray)) 
if UCase(Path)="ROOT" then '判断网站是不是在独立的应用程序下运行 
'再判断网站是不是在某个文件夹下运行 
if InStr(WSPP,WSFN)=0 then '网站在根目录下的一个文件夹下运行 
'根据受访页面的地址拼出网站所在文件夹的地址 
dim CurrentUrl,NameArray 
CurrentUrl=request.ServerVariables("URL") 
NameArray=split(CurrentUrl,"/") 
for i=LBound(NameArray) to UBound(NameArray) 
if UCase(NameArray(i))=UCase(WSFN) then 
for j=0 to i 
WSPP=WSPP+NameArray(j)+"\" 
next 
exit for 
end if 
next 
else '表明网站是在根目录下运行 
'什么都不必做,返回值已经初始化了 
end if 
else '表明网站是在虚拟目录下运行 
'什么也不做,返回值已经初始化了 
end if 
WSPP=replace(WSPP,"\\","\") 
GetSitePhysicalPath=WSPP 
End Function 

PS:以上只是针对Access数据库解决的包含路径不对的问题,使站点能公用一个数据库连接文件,任意一个文件包含它,数据库都能正常打开,并且不必理会网站是怎么运行的(根目录下运行,虚拟路径下运行,根目录+网站所在目录下运行)。

标签:ASP,包含文件,路径问题
0
投稿

猜你喜欢

  • Python里字典的基本用法(包括嵌套字典)

    2023-04-26 14:51:00
  • MSSQL数据库排序规则如何更改

    2023-07-01 11:09:58
  • Django 设置admin后台表和App(应用)为中文名的操作方法

    2023-01-31 13:37:54
  • mysql5存储过程编写实践

    2008-12-24 16:32:00
  • CSS布局之浮动(三)自适应

    2008-08-19 12:49:00
  • Python使用matplotlib实现基础绘图功能示例

    2023-08-31 03:24:02
  • 图片放大镜,多图片放大(已更新)[可调整倍数、区域大小、展示区域位置]

    2011-06-16 20:43:07
  • Python爬虫之Selenium多窗口切换的实现

    2021-09-25 17:48:48
  • Python错误+异常+模块总结

    2023-07-26 03:18:19
  • python 利用turtle模块画出没有角的方格

    2022-03-09 04:25:04
  • python中upper是做什么用的

    2023-10-30 15:53:29
  • Perl与JS的对比分析(数组、哈希)

    2022-08-31 05:45:20
  • 基于javascript实现tab切换特效

    2024-02-24 12:31:58
  • OpenCV实战之AI照片背景替换

    2022-06-11 06:58:09
  • python中如何提高图像质量

    2023-05-17 17:02:03
  • SqlServer 2005 中字符函数的应用

    2024-01-16 09:01:32
  • Python使用smtplib 实现单发和群发邮件验证码

    2023-07-10 13:56:50
  • 表格梳理解析python内置时间模块看完就懂

    2023-10-21 08:10:27
  • Python 解析pymysql模块操作数据库的方法

    2021-05-07 07:46:13
  • asp获取客户端的MAC地址

    2007-08-17 10:58:00
  • asp之家 网络编程 m.aspxhome.com