虽然本案例不需要服务器端的技术支持,但是我们需要与数据库打交道,并能够顺畅地与数据库进行通信,很方便地查询和操作数据库。这里主要借助了ActiveXObject插件,只需要实例化该插件即可。
对于IE浏览器来说,该插件在默认状态下已经安装,如果要兼容Firefox等浏览器,则需要手动安装ActiveXObject插件。这里有两种实现方法:
一种是使用IETab这个插件,在Firefox下直接调用IE浏览器内核进行浏览。读者也可以在Firefox中通过附加组件的形式安装IETab,然后在窗口底部状态栏右侧切换IE和Firefox内核,从而获取ActiveXObject插件。
另一种是使用npActivexPlugin,使Firefox直接支持ActiveX。这两款Firefox扩展的下载地址分别是http://ietab.mozdev.org/和http://forums.mozine.cn/index.php?showtopic=2350,选择一款适合你自己的就可以了。
//连接数据库函数 //参数说明://file表示当前网页文件;data表示数据库文件,及其相对于当前文件的位置,如data/home.mdb function connection(file, data){ var filePath = location.href.substring(0, location.href.indexOf(file)); var path = filePath + data; path = path.substring(8); var conn = new ActiveXObject("ADODB.Connection"); conn.Provider = "Microsoft.Jet.OLEDB.4.0"; conn.ConnectionString = "Data Source=" + path; conn.open; return conn; }
然后在页面中调用该函数,定义connection对象即可。
var conn = connection("家庭日志.html", "data/home.asp");
注意,为了防止网络下载Accesss数据库文件,避免整个网站数据全部丢失,这里把Accesss数据库文件的扩展名mdb改为asp。这样任何人都无法在网上下载数据库文件,即使该文件的路径被别人获取到,由于它是asp扩展名,则服务器都不会允许用户下载该文件。