在html静态页面里面怎么用函数调用数据库啊?求高手帮忙

在html静态页面里面怎么用函数调用数据库啊?求高手帮忙,第1张

html是静态页面,因此,如果实现数据库动态调用,最好的方法就是使用AJAX技术,使用XMLHTTPrequest来请求。

给一个示例吧:

function requestHttp(){

var request

if(window.XMLHttpRequest) {

request = new XMLHttpRequest()

if(request.overrideMimeType) {request.overrideMimeType('text/xml')

}

} else if(window.ActiveXObject) {

var versions = ['Microsoft.XMLHTTP', 'MSXML.XMLHTTP', 'Microsoft.XMLHTTP', 'Msxml2.XMLHTTP.7.0', 'Msxml2.XMLHTTP.6.0', 'Msxml2.XMLHTTP.5.0', 'Msxml2.XMLHTTP.4.0', 'MSXML2.XMLHTTP.3.0', 'MSXML2.XMLHTTP']

for(var i=0i<versions.lengthi++) {try

{request = new ActiveXObject(versions[i])break}

catch(e) {}

}}

return request

}

function xmlhttp(){

this.r=requestHttp()

}

xmlhttp.prototype.postopen=function(url,data){

this.r.open('POST',url,false)

this.r.setrequestheader("content-type","application/x-www-form-urlencoded")

this.r.onreadystatechange = ReadyStateChange(this)

if(typeof(data)=='undefined')

this.r.send()

else

this.r.send(data)

}

xmlhttp.prototype.getopen=function(url){

if(window.XMLHttpRequest) {this.r.open('GET',url)

this.r.onreadystatechange = ReadyStateChange(this)

this.r.send(null)

} else {

this.r.open("GET", url, true)

this.r.onreadystatechange = ReadyStateChange(this)

this.r.send()

}

}

ReadyStateChange=function(obj){

return function(){

if(obj.r.readyState==4){

obj.status=obj.r.status

obj.text=obj.r.responseText

obj.body=obj.r.responseBody

callpage()

}

}

}

把这个别存为Shopajax.js

<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0 Transitional//EN">

<HTML>

<HEAD>

<TITLE>New Document </TITLE>

<META NAME="Generator" CONTENT="EditPlus">

<META NAME="Author" CONTENT="">

<META NAME="Keywords" CONTENT="">

<META NAME="Description" CONTENT="">

<script type="text/javascript" src="shopajax.jss"></script>

</HEAD>

<BODY>

<div id="as"></div>

<SCRIPT LANGUAGE="JavaScript">

<!--

var ajax=new xmlhttp()

debugger

ajax.getopen("1.html")

function callpage(){

if(ajax.status==0){//本地为0,远程为200

var obj=eval('('+ajax.text+')')

document.getElementById("as").innerHTML="年纪:"+obj.Age+"<br>薪水:"+obj.Money

}

}

//-->

</SCRIPT>

</BODY>

</HTML>

这个随便存一个页面保存为index.html

{"Money":2000.00,"Age":21}

把这个存成一个1.html

保存完后,点击Index.html就可以看到Div里面有值了。值是从1.html里面取到的。这个过程实现 了Ajax

HTML静态本身是不可以直接连接数据库的,但是可以在静态网页里嵌套一个JS脚本或一个<iframe>,再在这个JS或<iframe>里连接数据库。这样就达到了HTML静态网页显示数据库内容的目标。这种方法是被各大网站广泛应用的,例如一篇太平洋网上的热点文章。它的文章主体是一个静态网页,但文章下面的评论却是动态的数据库内容。类似的还在非常多,尤其是一些大型网站

<script language='javascrpt' src='xxx.asp'></script>

其实就是计数器的方式,xxx.asp是读取字段值。

未测试,测试好了告诉一声。


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

原文地址: http://outofmemory.cn/sjk/6936228.html

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

发表评论

登录后才能评论

评论列表(0条)

保存