仓酷云
标题:
ASP编程:ASP中正则表达式的使用(二)
[打印本页]
作者:
冷月葬花魂
时间:
2015-1-16 22:53
标题:
ASP编程:ASP中正则表达式的使用(二)
优点:简单易学、开发速度快、有很多年“历史”,能找到非常多别人做好的程序来用、配合activeX功能强大,很多php做不到的asp+activeX能做到,例如银行安全控件正则 5、总结
下面我们先容了正则表达式的基础观点,和在VBScript和JavaScript中怎样利用正则表达式,同时,经由过程一些实例让人人有了理性的熟悉。正则表达式的使用局限很广,能为人人办理良多实践中的成绩。本文先容的内容只是一些开端的常识,另有良多语律例则必要人人持续进修,在理论中发明成绩,办理成绩。前往顶部
怎样完成数据纪录的分页显现(DarkMan)
怎样完成数据纪录的分页显现(1)
经由过程Recordset的GetRows办法,能够完成数据纪录的分页显现。上面是一个完全的例子:
<%@Language=VBSCRIPT%>
<%OptionExplicit%>
<%
DimiStart,iOffset
iStart=Request("Start")
iOffset=Request("Offset")
ifNotIsNumeric(iStart)orLen(iStart)=0then
iStart=0
else
iStart=CInt(iStart)
endif
ifNotIsNumeric(iOffset)orLen(iOffset)=0then
iOffset=10
else
iOffset=Cint(iOffset)
endif
Response.Write"观察"&iOffset&"个纪录从"&iStart&"入手下手<BR>"
DimobjConn,objRS
SetobjConn=Server.CreateObject("ADODB.Connection")
objConn.Open"Provider=SQLOLEDB.1;DataSource=(local);uid=sa;pwd=;Initial Catalog=pubs"
SetobjRS=Server.CreateObject("ADODB.Recordset")
objRS.Open"SELECT*FROMAuthors",objConn
DimaResults
aResults=objRS.GetRows
objRS.Close
SetobjRS=Nothing
objConn.Close
SetobjConn=Nothing
DimiRows,iCols,iRowLoop,iColLoop,iStop
iRows=UBound(aResults,2)
iCols=UBound(aResults,1)
IfiRows>(iOffset+iStart)Then
iStop=iOffset+iStart-1
Else
iStop=iRows
EndIf
ForiRowLoop=iStarttoiStop
ForiColLoop=0toiCols
Response.WriteaResults(iColLoop,iRowLoop)&""
Next
Response.Write"<BR>"
Next
Response.Write"<P>"
ifiStart>0then
显现“前10个”毗连
Response.Write"<AHREF=""paging.asp?Start="&iStart-iOffset&_
"&Offset="&iOffset&""">前"&iOffset&"</A>"
endif
ifiStop<iRowsthen
显现“后10个”毗连
Response.Write"<AHREF=""paging.asp?Start="&iStart+iOffset&_
"&Offset="&iOffset&""">后"&iOffset&"</A>"
endif
%>
怎样完成数据的分页显现(2)
这里先容别的一种分页显现的办法,是经由过程MSSQL的存储历程。本办法不合用于Access数据库。
假定我们要对数据表MyTable的数据完成分页显现,起首写一个存储历程以下:
CREATEPROCEDUREsp_PagedItems
(
@Pageint,
@RecsPerPageint
)
AS
--加速表的拔出速率
SETNOCOUNTON
--入手下手纪录号
DECLARE@RecCountint
SELECT@RecCount=@RecsPerPage*@Page+1
--创立一时表
CREATETABLE#TempItems
(
IDintIDENTITY,
Namevarchar(50),
Pricecurrency
)
--筹办一时表
INSERTINTO#TempItems(Name,Price)
SELECTName,PriceFROMMyTableORDERBYPrice
--求出要查询的最小ID和最年夜ID
DECLARE@FirstRecint,@LastRecint
SELECT@FirstRec=(@Page-1)*@RecsPerPage
SELECT@LastRec=(@Page*@RecsPerPage+1)
--失掉实践的纪录,并前往是不是另有数据!
SELECT*,
MoreRecords=
(
SELECTCOUNT(*)
FROM#TempItemsTI
WHERETI.ID>=@LastRec
)
FROM#TempItems
WHEREID>@FirstRecANDID<@LastRec
--恢复设置
SETNOCOUNTOFF
在这个存储历程里,我们起首创立一个全体纪录的一时表,并增添了一个主动编号的字段ID。如许,分歧的纪录就有一个递增的独一标记。
依据以后的页号和每页的纪录数,能够盘算出每页的最小和最年夜的ID。从而失掉以后页的一切纪录。
为了显现的便利,存储历程还盘算了MoreRecords字段,作为显现下一页的判别前提。
使用了这个存储历程的程序代码以下:
<%
每页显现10条
ConstiRecordsPerPage=10
DimcurrentPage以后页号
DimbolLastPage在最初一页?
iflen(Request.QueryString("page"))=0then
currentPage=1
else
currentPage=CInt(Request.QueryString("page"))
endif
失掉以后页的纪录
strSQL="sp_PagedItems"¤tPage&","&iRecordsPerPage
objRS.OpenstrSQL,objConn
判别是不是在最初一页
ifNotobjRS.EOFthen
ifCInt(objRS("MoreRecords"))>0then
bolLastPage=False
else
bolLastPage=True
endif
endif
%>
<P>
</p>asp,你就只能等着微软给你解决,它不乐意你就只好悲催。而且asp跑在windows服务器上,windows服务器跟linux比起来简直弱爆了!
作者:
山那边是海
时间:
2015-1-18 23:28
完全不知道到底自己学的是什么。最后,除了教程里面说的几个例子,还是什么都不会。
作者:
若相依
时间:
2015-1-20 05:47
Response:从字面上讲是“响应”,因此这个是服务端向客户端发送东西的,例如Response.Write
作者:
简单生活
时间:
2015-1-27 08:17
接下来就不能纸上谈兵了,最好的方法其实是实践。实践,只能算是让你掌握语言特性用的。而提倡做实际的Project也不是太好,因为你还没有熟练的能力去综合各种技术,这样只能使你自己越来越迷糊。
作者:
小妖女
时间:
2015-2-5 03:09
作为IE上广为流传的动态网页开发技术,ASP以它简单易学博得了广大WEB程序爱好这的青睐,而且它对运行环境和开发品台的不挑剔,以及有大量有效的参考手册,极大的推广了它的发展。
作者:
老尸
时间:
2015-2-11 02:51
ASP主要是用好六个对象,其实最主要的是用好其中两个:response和request,就可以随心所欲地控制网页变换和响应用户动作了。
作者:
柔情似水
时间:
2015-3-1 19:45
ASP(ActiveServerPages)是Microsfot公司1996年11月推出的WEB应用程序开发技术,它既不是一种程序语言,也不是一种开发工具,而是一种技术框架,不须使用微软的产品就能编写它的代码,能产生和执行动态、交互式、高效率的站占服务器的应用程序。
作者:
小魔女
时间:
2015-3-10 22:45
我认为比较好的方法是找一些比较经典的例子,每个例子比较集中一种编程思想而设计的。
作者:
透明
时间:
2015-3-17 12:08
ASP主要是用好六个对象,其实最主要的是用好其中两个:response和request,就可以随心所欲地控制网页变换和响应用户动作了。
作者:
飘灵儿
时间:
2015-3-24 09:32
跟学别的语言一样,先掌握变量,流程控制语句(就是ifwhileselect)等,函数/过程,数组
欢迎光临 仓酷云 (http://ckuyun.com/)
Powered by Discuz! X3.2