ASP包含文件中的路径问题和使用单一数据库连接文件的解决方案
2023-06-13 09:14:08 时间
啥都不说了,直接奉献原代码
复制代码代码如下:
"==========注意===============================================
"1、网站所在文件夹的名字不能为“root”
"2、网站所在文件夹的名字,物理路径中不允许出现重复此文件夹名,如F:\t\t,t为网站所在文件夹名,这种情况会出错
"=============================================================
DimdbPath,dbName,Db,ConnStr,WebSiteFolderName
onerrorresumenext
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()
"======================
Setconn=Server.CreateObject("ADODB.Connection")
ConnStr="Provider=Microsoft.Jet.OLEDB.4.0;DataSource="&Db
Conn.OpenConnStr
IfErrThen
Err.Clear
SetConn=Nothing
Response.Write"数据库连接错误!"
Response.End
EndIf
SubCloseConn()
conn.close
setconn=nothing
endSub
"获取网站所在目录的绝对路径(带“\”号)
FunctionGetSitePhysicalPath(WSFN)
dimAPPL_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))
ifUCase(Path)="ROOT"then"判断网站是不是在独立的应用程序下运行
"再判断网站是不是在某个文件夹下运行
ifInStr(WSPP,WSFN)=0then"网站在根目录下的一个文件夹下运行
"根据受访页面的地址拼出网站所在文件夹的地址
dimCurrentUrl,NameArray
CurrentUrl=request.ServerVariables("URL")
NameArray=split(CurrentUrl,"/")
fori=LBound(NameArray)toUBound(NameArray)
ifUCase(NameArray(i))=UCase(WSFN)then
forj=0toi
WSPP=WSPP+NameArray(j)+"\"
next
exitfor
endif
next
else"表明网站是在根目录下运行
"什么都不必做,返回值已经初始化了
endif
else"表明网站是在虚拟目录下运行
"什么也不做,返回值已经初始化了
endif
WSPP=replace(WSPP,"\\","\")
GetSitePhysicalPath=WSPP
EndFunction
PS:以上只是针对Access数据库解决的包含路径不对的问题,使站点能公用一个数据库连接文件,任意一个文件包含它,数据库都能正常打开,并且不必理会网站是怎么运行的(根目录下运行,虚拟路径下运行,根目录+网站所在目录下运行)。
相关文章
- springboot上传文件(存入服务器,并将URL存入数据库表中)「建议收藏」
- SQLServer 错误 7906 数据库错误:文件 FILE 不是有效的文件流文件。 故障 处理 修复 支持远程
- MySQL 各类日志文件介绍详解数据库
- CSV文件如何快速导入MySQL数据库?(csv怎么导入mysql)
- 导入mssql数据库文件:一步搞定!(导入mssql数据库文件)
- MySQL快速拷贝数据库文件的技巧(mysql拷贝数据库文件)
- MySQL日志详解掌握log文件管理,优化数据库性能(mysql 中log)
- MySQL数据库中,IBD文件的大小对于性能的影响分析(mysql中ibd大小)
- 基于ASP的MySQL数据库连接实现(asp连接数mysql)
- 在MySQL5中使用ASP搭建数据库连接(asp连接mysql5)
- ASP读取MySQL数据库操作变慢的原因分析(asp+读取mysql慢)
- ASP绑定MySQL实现功能强大的数据库访问(asp绑定mysql)
- 库ASP实现MySQL数据库数据更新(asp更新mysql数据)
- 数据库探索ASP环境搭建MySQL数据库方法(asp搭建mysql)
- 数据如何使用ASP操作MySQL数据库(asp怎么存取mysql)
- ASP写入Oracle数据库性能瓶颈问题(asp写入Oracle慢)
- ASP程序开发与Oracle数据库结合实现(asp与oracle)
- 如何使用MySQL将XB文件还原为数据库(mysql xb文件还原)
- Oracle数据库控制文件的重要性(oracle中控制文件)
- asp下将数据库中的信息存储至XML文件中
- 如何查看数据库alert日志文件