仓酷云

 找回密码
 立即注册
搜索
热搜: 活动 交友 discuz
查看: 397|回复: 7
打印 上一主题 下一主题

[学习教程] ASP教程之怎样用Asp静态天生xml文件

[复制链接]
简单生活 该用户已被删除
跳转到指定楼层
楼主
发表于 2015-1-16 22:46:19 | 只看该作者 回帖奖励 |倒序浏览 |阅读模式

马上注册,结交更多好友,享用更多功能,让你轻松玩转社区。

您需要 登录 才可以下载或查看,没有帐号?立即注册

x
因为ASP脚本语言非常简单,因此其代码也简单易懂,结合HTML代码,可快速地完成网站的应用程序。还无法完全实现一些企业级的功能:完全的集群、负载均横。xml|静态|天生xml相干代码以下:
FunctionReplaceChar(FstrSource)
dimstrRet
ifIsNull(FstrSource)then
FstrSource=""
endif
strRet=Replace(FstrSource,"&","&")
strRet=Replace(strRet,"<","<")
strRet=Replace(strRet,">",">")
strRet=Replace(strRet,"""",""")
strRet=Replace(strRet,"","")
ReplaceChar=strRet
EndFunction
functionRstToXML(FrstRst,FstrRstName)
dimstrSpacespacestringbehandofelement
dimintLevelleveloftheelement
dimstrXMLthereturnstring(xmlstring)
dimintRstField
dimstrShortDate

documentlevel
intLevel=0
strSpace=space(intLevel*2)
ifLen(FstrRstName)>0then
strXML=strSpace&"<"&FstrRstName&">"&vbCR
intLevel=intLevel+1
strSpace=space(intLevel*2)
endif
ifFrstRst.EOFthen
strXML=strXML&strSpace&"<Record"
fornCount=0toFrstRst.Fields.Count-1
strXML=strXML&space(1)&FrstRst.Fields(nCount).Name&"="
next
strXML=strXML&"/>"&vbCR
ifLen(FstrRstName)>0then
strXML=strXML&strSpace&"</"&FstrRstName&">"&vbCR
endif
RstToXML=strXML
exitfunction
endif
nowmoveinonelevel
intLevel=intLevel+1
strSpace=space(intLevel*2)

loopthroughtherecords
dimstrTemp
FrstRst.MoveFirst
dowhilenotFrstRst.EOF
strTemp=""
loopthroughthefields
strXML=strXML&strSpace&"<Record"
foreachobjFieldinFrstRst.Fields
setobjField=FrstRst.Fields(intRstField)
strTemp=strTemp&space(1)&objField.Name&"="
strTemp=strTemp&""""&ReplaceChar(objField.value)&""""
endif
next
strXML=strXML&"<Record"&strTemp&"/>"&vbCR
FrstRst.MoveNext
loop
intLevel=intLevel-1
strSpace=space(intLevel*2)
ifLen(FstrRstName)>0then
strXML=strXML&strSpace&"</"&FstrRstName&">"&vbCR
endif
RstToXML=strXML
endfunction
getInfo.asp
相干代码以下:
<?xmlversion="1.0"encoding="gb2312"?>
<root>
<%
setconn=server.CreateObject("ADODB.Connection")
conn.Open"FILEDSN=test.dsn"setfacultyRst=conn.Execute("select*fromfaculty")
dowhilenotfacultyRst.eof
strFaculty=facultyRst("name")

setclassRst=conn.Execute("selectcount(id)asclasscountfromrecruitclasswhererecruityear="+cstr(year(now))+"andfaculty="+strFaculty+"")
setmaleRst=conn.Execute("selectcount(id)asmalecountfromnewstudentwhererecruityear="+cstr(year(now))+"andfaculty="+strFaculty+"andgender=男")
setfemaleRst=conn.Execute("selectcount(id)asfemalecountfromnewstudentwhererecruityear="+cstr(year(now))+"andfaculty="+strFaculty+"andgender=女")
%>
<newstudentfaculty="<%=strFaculty%>"class="<%=classRst("classcount")%>"male="<%=maleRst("malecount")%>"female="<%=femaleRst("femalecount")%>"/>
<%
facultyRst.MoveNext
loop
%>
</root>
<%
dimstrConn,strSQL,rs,n,sFileName
changetheservername,ifitisremote,changetheUIDandPWDtoyourown
strConn="Provider=SQLOLEDB;Server=localhost;Database=pubs;UID=sa;PWD=;"
strSQL="SELECT*FROMemployee"
setrs=Server.CreateObject("ADODB.Recordset")
rs.openstrSQL,strConn,1,1
sFileName="c:        empemployee.xml"
rs.savesFileName,1
rs.close
setrs=nothing
%>
or
<%
Response.ContentType="text/xml"
dimstrConn,strSQL,rs,n,sFileName
changetheservername,ifitisremote,changetheUIDandPWDtoyourown
strConn="Provider=SQLOLEDB;Server=localhost;Database=pubs;UID=sa;PWD=;"
strSQL="SELECT*FROMemployee"
setrs=Server.CreateObject("ADODB.Recordset")
rs.openstrSQL,strConn,1,1
sFileName="c:        empemployee.xml"
rs.saveResponse,1
rs.close
setrs=nothing
%>
因为现在数据库都使用标准的SQL语言对数据库进行管理,所以如果是标准SQL语言,两者基本上都可以通用的。SQLServer还有更多的扩展,可以用存储过程,数据库大小无极限限制。
金色的骷髅 该用户已被删除
沙发
发表于 2015-1-19 23:12:04 | 只看该作者
用户端的浏览器不需要提供任何别的支持,这样大提高了用户与服务器之间的交互的速度。
若天明 该用户已被删除
板凳
发表于 2015-1-25 19:07:43 | 只看该作者
他的语法和设计思路和VB完全相同,导致很多ASP的书都留一句“相关内容请参考VB的相关教材....”更糟糕的是,相当多的ASP教程混合了Javascript,VBscript等等脚本语言,搞的初学者。
山那边是海 该用户已被删除
地板
发表于 2015-2-3 14:02:19 | 只看该作者
我想问如何掌握学习节奏(先学什么再学什么)最好详细点?
变相怪杰 该用户已被删除
5#
发表于 2015-2-9 03:08:16 | 只看该作者
我可以结合自己的经验大致给你说一说,希望对你有所帮助,少走些弯路。
灵魂腐蚀 该用户已被删除
6#
发表于 2015-2-26 19:45:52 | 只看该作者
ASP主要是用好六个对象,其实最主要的是用好其中两个:response和request,就可以随心所欲地控制网页变换和响应用户动作了。
再现理想 该用户已被删除
7#
发表于 2015-3-16 07:09:32 | 只看该作者
兴趣爱好,那么你无须学编程,申请一个域名和空间,在网上下载一些免费开源的CMS系统,你不用改代码,只须熟悉它们的后台操作,像office一样简单方便,很快就能建一个站点,很多站长都是这样做的
因胸联盟 该用户已被删除
8#
发表于 2015-3-22 21:08:58 | 只看该作者
兴趣爱好,那么你无须学编程,申请一个域名和空间,在网上下载一些免费开源的CMS系统,你不用改代码,只须熟悉它们的后台操作,像office一样简单方便,很快就能建一个站点,很多站长都是这样做的
您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

QQ|Archiver|手机版|仓酷云 鄂ICP备14007578号-2

GMT+8, 2024-12-24 03:54

Powered by Discuz! X3.2

© 2001-2013 Comsenz Inc.

快速回复 返回顶部 返回列表