|
马上注册,结交更多好友,享用更多功能,让你轻松玩转社区。
您需要 登录 才可以下载或查看,没有帐号?立即注册
x
ASP脚本是采用明文(plaintext)方式来编写的。程序|数据|数据库|显现数据库显现程序,能调恣意库,恣意字段,多关头字搜刮,主动分页.
阿余常常写一些数据库相干的程序,固然离不开显现库中的数据了,说假话,做如许的程序真是无聊啊,以是,阿余就想写个函数,一个通用的数据库显现函数.请求以下:
1.能显现指定的字段,固然,字段名和显现的笔墨能够纷歧样.
2.能同时按多个字段举行查询,撑持含混和准确两种查询体例.
3.有横向分列和纵向分列字段两种显现体例.
4.能主动分页.
5.能设定每页显现几笔记录.好啦,请求年夜至就是如许了.依据这个请求,阿余写了上面的函数.
实践上,这里阿余写了两个函数.一个是TABDISP(),用于显现一个指定表中的内容.另有一个是ER()一个小小的毛病处置函数.
这个函数有5个参数(真够多的).而且各个参数都要输出数据,不克不及是空缺,否则会堕落的.
1(TAB),要挪用的表名.
2(DISPFILD),要显现表中的哪一些字段,如字段名和要显现的字符纷歧样用<分开.好比某一个字段名为:IMG,但要在页面上显现为:图片,那末,就写为IMG<图片,假如有多个字段,各字段间用“,”分开,唉,老声长谈.
3(FINDFILD),要按哪些字段举行查询,字段名和要显现的字符间用<分开.
4(PAGEN),每页显现几笔记录.
5(FH),显现的偏向.当为S时纵向显现.为H时横向显现.
函数的前往值,当没有堕落的时分,前往值为真,不然为假.
这个函数中没有包含毗连到数据库的部分.以是要本人毗连到库.别的,为了反复使用.能够把这个函数专门用一个文件来保留,然后在必要的时分包括这个文件.
看上面的函数:(不要不看完,最初我举有使用的例子)
<%
以下界说一个显现表格的函数TABDISP(),参数TAB,被显现的表名,DISPFILD,要显现的字段,FINDFILD,查询字段,PAGEN,每页显现数目,fh,显现的偏向
如显现乐成,前往值为真,不乐成,前往值为假.
多个字段间用,分开
查询字段必定要包括在显现字段中.
如字段名与要显现的称号纷歧样,用<分开,后面是字段名,前面是显现的名字,而要举行搜刮的字段则必定要用<分开要字段名和显现字符
FH显现偏向为"H"时作横向显现,为"S"时作纵向显现辨别巨细写
FUNCTIONTABDISP(TAB,DISPFILD,FINDFILD,PAGEN,FH)
OnErrorResumeNext
IFDISPFILD=""THENDISPFILD="*"
IFPAGEN=""THENPAGEN=15
DISPFILD1=DISPFILD&","
findfild1=findfild&","
dimfindl(10),findr(10)
i1=1
dowhileinstr(findfild1,",")0
star=instr(findfild1,",")
findl(i1)=left(findfild1,star-1)
findr(i1)=findl(i1)
fildbak=findl(i1)
findl(i1)=left(fildbak,instr(fildbak,"<")-1)
findr(i1)=right(fildbak,len(fildbak)-instr(fildbak,"<"))
findfild1=right(findfild1,len(findfild1)-star)
i1=i1+1
loop
Response.Write"<tableborder=0width=100%cellspacing=0><tr><formmethod=GET>"
Response.Write"<TD>"width=50%
IFSESSION("FLMENULBUP")""THEN
Response.Write"以后栏目:<AHREF=FLMEN.ASP?MENULB="&SESSION("FLMENULBUP")&">"&MID(SESSION("FLMENULBUP"),4,200)&""
ENDIF
IFSESSION("flmenulb")SESSION("FLMENULBUP")THEN
Response.Write">><AHREF=FLMEN.ASP?menulb="&SESSION("FLMENULBUP")&"&LB="&SESSION("flmenulb")&">"&MID(SESSION("flmenulb"),4,200)&""
ENDIF
Response.Write"</TD><tdalign=right></td><tdalign=right><tableborder=0cellspacing=0cellpadding=0>"
Response.Write"<tr><tdrowspan=2><imgsrc=http://www.163design.net/a/s/img/SEARCH.GIFwidth=50></td>"
fori3=1toi1-1
Response.Write"<td>"&findr(i3)&":</td>"
next
Response.Write"</tr><tr>"<td></td>
fori2=1toi1-1
Response.Write"<td><inputtype=textname=key_word"&i2&"size=8value=></td>"
next
Response.Write"<tr></table></td><tdwidth=20%><inputtype=checkboxname=find_frvalue=yes>准确<inputtype=submitvalue=入手下手name=B_FIND></td>"
Response.Write"</form></tr></table>"
find_fr=request("find_fr")
TJ=""
urllr="&find_fr="&find_fr
findlrdisp=""
FORI3=1TOI1-1
TJ1=request("KEY_WORD"&I3)
urllr=urllr&"&key_word"&i3&"="&tj1
IFTJ1=FINDR(I3)ORTJ1=""THEN
TJ1=""
ELSE
iffind_fr"yes"then
findlrdisp=findlrdisp&findr(i3)&"包括“"&TJ1&"” "
tj1="AND"&findL(I3)&"like%"&TRIM(TJ1)&"%"
else
findlrdisp=findlrdisp&findr(i3)&"是“"&TJ1&"” "
tj1="AND"&FINDL(I3)&"="&TRIM(TJ1)&""
endif
ENDIF
TJ=TJ&TJ1
IFTJ=""THEN
TOPSN="TOP300"
ELSE
TOPSN=""
ENDIF
NEXT
dimfild(35),dispfil(35),dispfildlr
dispfildlr=""
i=1
dispfild1=dispfild1
dowhileinstr(dispfild1,",")0
star=i</p>楼上说交互性不好,太牵强了吧。在微软提供的一套框架中,利用asp做网站,开发效率高,使用人数少,减少不必要的开销。交互性是互动方式,是有开发人员决定的。 |
|