ASP网页设计asp利用activex组件实例一
ActiveServerPage技术为应用开发商提供了基于脚本的直观、快速、高效的应用开发手段,极大地提高了开发的效果。在讨论ASP的安全性问题之前,让我们来看看ASP是怎么工作的。active|activextest.asp以下内容为程序代码
<!DOCTYPEHTMLPUBLIC"-//W3C//DTDHTML4.0Transitional//EN">
<html>
<head>
<title>activex组件使用例子一</title>
</head>
<body>
<%
---------------------------------------------------------
activex组件使用例子一
读取sqlserver7pubs数据库中authors表并分页显现
asp文件中卖力挪用并前台数据查验,这里次要指page参数
该例子完整利用activex组件来完乐成能,速率快,保密性好,但页面定制才能差
jjxby2000/4/15
----------------------------------------------------------------
dimblnError
ifnotisempty(request("page"))then
ifnotisnumeric(request("page"))then
response.write"参数毛病!"
blnError=true
endif
endif
ifnotblnErrorthen
dimobjLoop
SetobjLoop=Server.CreateObject("Performance.Loop")
objLoop.List()
SetobjLoop=Nothing
endif
%>
</body>
</html>
vbloopclassfile
创立一个performanceactivexdll项目,援用microsoftactiveserverpageslibrary和MicrosoftActiveXDatabaeObject。
填加一个class,定名为loop
以下内容为程序代码
OptionExplicit
DimMyScriptingContextAsScriptingContext
DimMyRequestAsRequest
DimMyResponseAsResponse
SubOnEndPage()
SetMyResponse=Nothing
SetMyRequest=Nothing
SetMyScriptingContext=Nothing
EndSub
SubOnStartPage(PassedScriptingContextAsScriptingContext)
SetMyScriptingContext=PassedScriptingContext
SetMyRequest=MyScriptingContext.Request
SetMyResponse=MyScriptingContext.Response
EndSub
FunctionList()
DimconAsNewADODB.Connection
DimrsAsNewADODB.Recordset
DimiAsInteger
DimjAsInteger
DimintPageAsInteger
DimintPageSizeAsInteger
DimintPageCountAsInteger
DimstrScriptNameAsString
DimintPosAsInteger
DimintFieldCountAsInteger
strScriptName=MyRequest.ServerVariables("Script_Name")
intPos=InStrRev(strScriptName,"/")
IfintPos0Then
strScriptName=Mid(strScriptName,intPos+1)
EndIf
IfIsEmpty(MyRequest("page"))Then
intPage=1
Else
intPage=CInt(MyRequest("page"))
EndIf
intPageSize=10
con.Open"Provider=SQLOLEDB.1;PersistSecurityInfo=False;UserID=sa;InitialCatalog=pubs;DataSource=(local)"
rs.Open"select*fromauthors",con,adOpenStatic
intFieldCount=rs.Fields.Count
WithMyResponse
.Write"<tableborder=1>"
IfNot(rs.EOFAndrs.BOF)Then
rs.PageSize=10
rs.AbsolutePage=intPage
intPageCount=rs.PageCount
IfintPage>intPageCountThen
intPage=intPageCount
&</p>大家可以自己去看一看.可以说看得想呕吐.以前有次下了个动网来看.里面连基本内置函数的保护措施(函数没防御性)都没有.难怪经常补这个补那个了.可能现在.NET版会好点吧 你可以通过继承已有的对象最大限度保护你以前的投资。并且C#和C++、Java一样提供了完善的调试/纠错体系。 ASP的语言不仅仅只是命令格式差不多,而是包含在<%%>之内的命令完全就是VB语法。虽然ASP也是做为单独的一个技术来提出的,但他就是完全继承了VB所有的功能。 你可以通过继承已有的对象最大限度保护你以前的投资。并且C#和C++、Java一样提供了完善的调试/纠错体系。 虽然ASP也有很多网络教程。但是这些都不系统。都是半路出家,只是从一个例子告诉你怎么用。不会深入讨论,更不会将没有出现在例子里的方法都一一列举出来。 学习是为了用的,是为了让你的程序产生价值,把握住这个原则会比较轻松点。除此之外,课外时间一定要多参加一些社会实践活动,来锻炼自己的能力。 交流是必要的,不管是生活还是学习我们都要试着去交流,通过交流我们可以学到很多我们自己本身所没有的知识,可以分享别人的经验甚至经历。 兴趣爱好,那么你无须学编程,申请一个域名和空间,在网上下载一些免费开源的CMS系统,你不用改代码,只须熟悉它们的后台操作,像office一样简单方便,很快就能建一个站点,很多站长都是这样做的
页:
[1]