仓酷云

标题: ASP网页设计基于ASP的站内多值搜刮 [打印本页]

作者: 活着的死人    时间: 2015-1-16 23:41
标题: ASP网页设计基于ASP的站内多值搜刮
因为ASP脚本语言非常简单,因此其代码也简单易懂,结合HTML代码,可快速地完成网站的应用程序。还无法完全实现一些企业级的功能:完全的集群、负载均横。运转情况:IIS剧本言语:VBScript数据库:Access/SQLServer数据库言语:SQL1.提要:
不管是在论坛,仍是旧事体系,或是下载体系等静态网站中,人人常常会看到搜刮功效:搜刮帖子,搜刮用户,搜刮软件(总之搜刮关头字)等,本文则是先容怎样创建一个高效有用的,基于ASP的站内多值搜刮。

本文面临的是“多前提含混婚配搜刮”,了解了多前提的,单一前提搜刮也不外小菜一碟了。一样平常来说,有两种办法举行多前提搜刮:列举法递进法。搜刮前提不太多时(n<=3),可以使用列举法,其语句频度为2的n次方,成指数增加,n为前提数。很分明,当前提增加今后,不管从程序的效力仍是可完成性思索都应接纳递进法,其语句频度为n,成线性增加。必要指出的是,列举法思绪十分复杂,逐一判别前提是不是为空,再按非空前提搜刮,同时能够使用真值表手艺来凑合前提极多的情形(信任没人往干这类事,4前提时就已要写16组语句了);递进法的头脑办法较为奇妙,重在了解,其巧就巧在一是利用了标记位(flag),二是妙用SQL中字符串联接符&。上面以实例来说解引擎的创建。

2.实例:
我们创建一通信录查询引擎,数据库名为addressbook.mdb,表名为address,字段以下:

IDNameTelSchool1张三33333333电子科技年夜学盘算机系2李四44444444四川年夜先生物系3王二22222222东北交通年夜学修建系…………
Web搜刮界面以下:

姓名:德律风:黉舍:搜刮按钮
接纳列举法的源程序以下:<%@CODEPAGE="936"%>毗连数据库<%dimconndimDBOathdimrsdimsqlSetconn=Server.CreateObject("ADODB.Connection")DBPath=Server.MapPath("addressbook.mdb")conn.Open"driver={MicrosoftAccessDriver(*.mdb)};dbq="&DBPathSetrs=Server.CreateObject("ADODB.Recordset")从Web页猎取姓名、德律风、黉舍的值dimNamedimTeldimSchoolName=request("Name")Tel=request("Tel")School=request("School")列举法的搜刮中心,由于有3个前提以是要写8组If判别语句iftrim(Name)=""andtrim(Tel)=""andtrim(School)=""thensql="select*fromaddressorderbyIDasc"endififtrim(Name)=""andtrim(Tel)=""andtrim(School)""thensql="select*fromaddresswhereSchoollike%"&trim(School)&"%orderbyIDasc"endififtrim(Name)=""andtrim(Tel)""andtrim(School)=""thensql="select*fromaddresswhereTellike%"&trim(Tel)&"%orderbyIDasc"endififtrim(Name)=""andtrim(Tel)""andtrim(School)""thensql="select*fromaddresswhereTellike%"&trim(Tel)&"%andSchoollike%"&trim(School)&"%orderbyIDasc"endififtrim(Name)""andtrim(Tel)=""andtrim(School)=""thensql="select*fromaddresswhereNamelike%"&trim(Name)&"%orderbyIDasc"endififtrim(Name)""andtrim(Tel)=""andtrim(School)""thensql="select*fromaddresswhereNamelike%"&trim(Name)&"%andSchoollike%"&trim(School)&"%orderbyIDasc"endififtrim(Name)""andtrim(Tel)""andtrim(School)=""thensql="select*fromaddresswhereNamelike%"&trim(Name)&"%andTellike%"&trim(Tel)&"%orderbyIDasc"endififtrim(Name)""andtrim(Tel)""andtrim(School)""thensql="select*fromaddresswhereNamelike%"&trim(Name)&"%andTellike%"&trim(Tel)&"%andSchoollike%"&trim(School)&"%orderbyIDasc"endifrs.opensql,conn,1,1显现搜刮了局ifrs.eofandrs.bofthenresponse.write"今朝通信录中没有纪录"elsedowhilenotrs.eofresponse.write"姓名:"&rs("Name")&"德律风:"&rs("Tel")&"黉舍:"&rs("School")&"<br>"rs.movenextloopendif断开数据库setrs=nothingconn.closesetconn=nothing%>

了解上述程序时,侧重揣摩中心部分,8组语句逐一对应了3个搜刮框中的8种形态

NameTelSchool空空空空空非空空非空空空非空非空非空空空非空空</p>因为现在数据库都使用标准的SQL语言对数据库进行管理,所以如果是标准SQL语言,两者基本上都可以通用的。SQLServer还有更多的扩展,可以用存储过程,数据库大小无极限限制。
作者: 若天明    时间: 2015-1-20 11:13
Request:从字面上讲就是“请求”,因此这个是处理客户端提交的东东的,例如Resuest.Form,Request.QueryString,或者干脆Request("变量名")
作者: 谁可相欹    时间: 2015-1-25 16:23
ASP.Net和ASP的最大区别在于编程思维的转换,而不仅仅在于功能的增强。ASP使用VBS/JS这样的脚本语言混合html来编程,而那些脚本语言属于弱类型、面向结构的编程语言,而非面向对象,这就明显产生以下几个问题:
作者: 精灵巫婆    时间: 2015-2-3 08:07
运用ASP可将VBscript、javascript等脚本语言嵌入到HTML中,便可快速完成网站的应用程序,无需编译,可在服务器端直接执行。容易编写,使用普通的文本编辑器编写,如记事本就可以完成。由脚本在服务器上而不是客户端运行,ASP所使用的脚本语言都在服务端上运行。
作者: 分手快乐    时间: 2015-2-26 02:11
Application:这个存储服务端的数据,如果不清除,会直到web应用程序结束才清除(例如重启站点)
作者: 小女巫    时间: 2015-3-15 22:17
尽管MS自己讲C#内核中更多的象VC,但实际上我还是认为它和Java更象一些吧。首先它是面向对象的编程语言,而不是一种脚本,所以它具有面向对象编程语言的一切特性,比如封装性、继承性、多态性等等,这就解决了刚才谈到的ASP的那些弱点。
作者: 愤怒的大鸟    时间: 2015-3-22 16:52
我就感觉到ASP和一些常用的数据库编程以及软件工程方面的思想是非常重要的。我现在也在尝试自己做网页,这其中就用到了ASP,我想它的作用是可想而知的。




欢迎光临 仓酷云 (http://ckuyun.com/) Powered by Discuz! X3.2