
在根目录下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
欢迎分享,转载请注明来源:内存溢出
微信扫一扫
支付宝扫一扫
评论列表(0条)