首 页  资讯中心 下载中心 资讯教程 最新下载 发布软件 发布文章 网通站 电信站繁體中文
设为首页
加入收藏
联系我们
 
您当前的位置:曾子源码软件下载站 -> 网页制作 -> Dreamweaver -> 文章内容 退出登录 用户管理
热门文章
· 常用C,VC,C++书籍下..
· 新概念英语视频教程..
· 常用 JAVA JAVA2 J..
· 《梦幻麻将馆9雀圣争..
· 新东方英语视频教程..
· 常用VB,Visual Basi..
· [组图] After Effect..
· WINDOWS 所有系统文..
· [组图] 让机器运行多..
· 全美经典学习指导系..
相关文章
谈Dreamweaver 数据库路径的使用
作者:cnbruce  来源:转载  发布时间:2005-8-3 21:45:37  发布人:我爱源码

减小字体 增大字体

Dreamweaver MX 动态建站数据库路径的使用方法中

一,不推荐使用Server.Mappath(相对文档路径地址的数据库文件)

虽然具有平台移植性,但对于不同层次,不同深度下的引用该数据库的文件,将不能完整地保证数据库路径的正确性。

举个例子:

1,数据库文件cnbruce.mdb,所在文件夹database(可http访问)
2,DW自动生成的连接数据库文件conn.asp,所在文件夹Connections
3,如果在DW中测试连接路径成功,则必须输入地址为Server.Mappath("../database/cnbruce.mdb")
但随后引用该数据库连接的文件必须保存在某文件夹中,该文件夹和database是同等的

即:
- database
- cnbruce.mdb
- Connections
- conn.asp
- 某文件夹
- x1.asp

这种结构才能使用正常。但这就必须要求站点中,所有引用了连接数据库文件的文件,必须存放在站点的一级目录下。显然这是不合理的,比如这样的结构。

- x2.asp
- database
- cnbruce.mdb
- Connections
- conn.asp
- 某文件夹
- 某子文件夹
- x3.asp

则x2.asp和x3.asp均不能正常显示。

原理分析:无论conn.asp放在哪里,无论conn.asp的内容如何,最后都是取决于引用了conn.asp的文件的文件位置和数据库的位置关系。具体解释: http://www.cnbruce.com/blog/showlog.asp?cat_id=26&log_id=423

解决办法:在conn.asp中进行判断当前路径,根据不同级别值给出不同链接路径……对于初学者来说,麻烦。
第二种解决方法就是采用相对根目录法,但也是不推荐使用。

二,不推荐使用Server.Mappath(相对根目录路径的数据库文件)

使用这种方法,首先需要将IIS默认站点调整到当前DW站点所在文件夹(XP系统),或建立一个站点指向该文件夹(2K等系统)。

反正一句话,就是当你输入 http://localhost/ 时,显示的内容已不是默认的IIS首页,而是你所设置的DW站点文件夹中的默认首页文档。

那么在设置了该IIS站点之后

1,数据库文件cnbruce.mdb,所在文件夹database(可http访问)
2,DW自动生成的连接数据库文件conn.asp,所在文件夹Connections
3,如果在DW中测试连接路径成功,则输入地址为Server.Mappath("/database/cnbruce.mdb")

/database/cnbruce.mdb 该方法就是相对根目录,高屋建瓴式的进行数据库路径的获得,无论哪个层次的,哪个目录下的站点文档均能正常显示。

但依然不推荐!原因如下:

在本地你可以自行修改IIS的站点,当上传到服务器或虚拟主机时,麻烦就来了。

1,如果你的虚拟主机服务商技术不过关,当在解析你网站根目录的时,不是指向到你的站点文件夹,而是指向服务器系统盘下的wwwroot文件夹。于是路径肯定错误。

2,如果你需要上传的并不是你的站点根目录,很显然,路径也肯定会发生解析错误。

所以,不推荐!那么,该怎么办?

三,推荐使用Server.Mappath(本地绝对物理路径的数据库文件)

很简单,这个数据库在本地你总会知道它所在的位置吧。在DW中创建时就直接使用该绝对物理路径地址。

OK,来上传了。当然不可能那么巧:上传到服务器上的数据库物理路径地址和本地数据库物理路径地址是一样的-__-!

所以,现在只需要获得上传到服务器空间上的数据库文件,在服务器上是处于什么物理地址就行了。

怎么获得?

1,建立一个path.asp文件,内容很简单

<%=server.mappath("cnbruce.mdb")%>

2,该文件和数据库文件cnbruce.mdb,共一文件夹,捆绑式一同上传。
3,在URL地址栏查看path.asp,得到cnbruce.mdb在服务器上的物理地址,拷贝该路径。
4,将本地的conn.asp中的物理路径,替换后再上传。一切OK!

特点:
1,虽然平台移植不很强,但全面支持所有站点中文件连接,况且也就是本地和服务器间两者间的移植。
2,防止%5c暴库间接获得数据库地址。
3,现在越来越多的空间建议将数据库文件放放到非Web访问目录中(当然具体的路径获得又是另外一种方法了),这就必须要求用户使用物理路径了。

所以,我的观点是:

Dreamweaver MX 动态建站数据库路径的使用方法:

本地使用物理地址,上传服务器依然使用物理地址。



会员CJJ的补充:
如果使用DW工具建立连数据库的文件,用物理地址是个不错的方法。但通过物理地址来访问数据库的话,换个服务器或目录就需要改源文件了。所以我们可以将路径作为一个参数,传给一个建立数据库连接过程的话,就可以用相对地址来解决不同级别目录连接数据库的问题了。

只要通过调用这个过程,传了相对地址就可以了。这种方法的好处在于,可移植性增强了。可以将整个目录移植到任意的支持ASP的服务器上。

工具的好处不用多说,但太过依赖工具忽略基础也不好,我们可以简单的手工修改一下数据连接的函数代码:


Dim oConn

Sub OpenDBConn(a_Path)
Dim sConn
sConn = "provider=microsoft.jet.oledb.4.0;user id=admin;jet oledb:database password=;data source=" & Server.mappath(Trim(a_Path) & "db/zxd_order.mdb")
Set oConn = Server.CreateObject("Adodb.Connection")
oConn.Open sConn
End Sub

Sub CloseDBConn()
On Error Resume Next
If IsObject(oConn) Then
oConn.Close
Set oConn = Nothing
End If
End Sub

[] [返回上一页] [打 印] [收 藏]
∷相关文章评论∷    (评论内容只代表网友观点,与本站立场无关!) [发表评论...]
关于本站 - 网站帮助 - 广告合作 - 下载声明 - 友情连接 - 网站地图 - 网站信息排名查询
Copyright © 2004-2006 Zasp.Net. All Rights Reserved .