asp父目录无效问题

asp父目录无效问题,第1张

<!--#include file="../include/conn.asp"-->相当于把conn.asp内容copy到当前位置,所以,conn.asp中的相对路径起点不同,在不同目录下include conn.asp, 结果打不相同。

根目录下include conn.asp,相当于到:根目录/xm/ 下找 db.mdb,

若在子目录abc下include conn.asp: 则相当于到 根目录/abc/xm/ 下找 db.mdb,当然找不到了。

简单的办法,就是在每个需要连接数据库的目录下各建一个conn.asp文件(不是复制,是新建)。

比如要从abc目录下调用,在abc目录建一个conn.asp文件

<%

DBPath1 = Server.MapPath("conn.asp") '找到当前目录下conn.asp的路径

DBPath = left(DBPath1,len(DBPath1)-12)&"xm/db.mdb" '找到上级目录、数据库路径

conn.Open "driver={Microsoft Access Driver (*.mdb)}dbq=" &DBPath

Set conn=Server.createobject("ADODB.CONNECTION")

conn.Open conn

%>

abc/conn.asp 共12个字符,所以减12

另外,ASP中一般用&连接字符串,不要用+号

直接include 当前目录下的conn.asp就没为题了。

楼上的办法,有些服务器可以,但现在很多服务器已经不再支持

server.mappath("../xm/db.mdb") 这种用法(不支持“../”路径)。

这个不一定。不过一般情况下我们都是把文件写在conn.asp中。你找一下看有没有这个文件。在哪个文件夹不一定。这个看个人习惯了。。

ASP连接 MYSQL的话是要装ODBC驱动的。

你出现的是500 内部服务器错误。具体要看是什么错误了。建议你把友好HTTP错误提示关闭。然后再看是哪一行出了错误。是什么错误。。。

把你的代码拿上来看一下.mappath应该是可以用父目录的呀..

父路径就是调用的时候形如: ../../ 的目录路径

即可以使用 ../ 来识别当前目录的上一级目录.

对于糖糖_ou 回答的修正:

直接加 / 并不是上一级目录,而是网站根目录,比如:

/images/logo.gif 表示根目录下的 /images/logo.gif


欢迎分享,转载请注明来源:内存溢出

原文地址:https://54852.com/sjk/10034897.html

(0)
打赏 微信扫一扫微信扫一扫 支付宝扫一扫支付宝扫一扫
上一篇 2023-05-04
下一篇2023-05-04

发表评论

登录后才能评论

评论列表(0条)

    保存