当前位置: 首页 > 图文教程 > 网络编程 > ASP > 一个通用数据库显示程序

ASP
Access 2000 数据库 80 万记录通用快速分页类
Microsoft JET Database Engine 错误 ''80004005'' 未指定的错误的完美解决方法
收藏的ASP常用的函数集
asp分页的一个类
ASP开发网页牢记注意事项
ASP下操作Excel技术总结分析
ASP数据岛操作类
ASP经典分页类
asp论坛在线人数统计研究
ASP调用SQL SERVER存储程序
asp输出bmp
ASP连接数据库的全能代码
ASP面向对象编程探讨及比较
web文件管理器的后续开发
一小偷类!!有兴趣的可以看看
利用ASP实现事务处理的方法
大数量查询分页显示 微软的解决办法
如何把ASP编写成DLL
asp实现树型结构
超级ASP大分页_我的类容我做主

ASP 中的 一个通用数据库显示程序


出处:互联网   整理: 软晨网(RuanChen.com)   发布: 2009-11-03   浏览: 229 ::
收藏到网摘: n/a

  阿余经常写一些数据库相关的程序,当然离不开显示库中的数据了,说实话,做这样的程序真是无聊啊,所以,阿余就想写个函数,一个通用的数据库显示函数.要求如下:

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"时作纵向显示 区分大小写
FUNCTION TABDISP(TAB,DISPFILD,FINDFILD,PAGEN,FH)
On Error Resume Next
IF DISPFILD="" THEN DISPFILD="*"
IF PAGEN="" THEN PAGEN=15
DISPFILD1=DISPFILD&","
findfild1=findfild&","

dim findl(10),findr(10)
i1=1
do while instr(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 "<table border='0' width='100%' cellspacing='0'><tr><form method='GET'>"
Response.Write "<TD > " 'width='50%'
IF SESSION("FLMENULBUP")<>"" THEN
Response.Write "当前栏目:<A HREF='FLMEN.ASP?MENULB="&SESSION("FLMENULBUP")&"'>"&MID(SESSION("FLMENULBUP"),4,200)&"</A>"
END IF
IF SESSION("flmenulb")<> SESSION("FLMENULBUP") THEN
Response.Write " >> <A HREF='FLMEN.ASP?menulb="&SESSION("FLMENULBUP")&"&LB="&SESSION("flmenulb")&"'>"&MID(SESSION("flmenulb"),4,200)&"</A>"
END IF
Response.Write "</TD><td align='right' ></td><td align='right'><table border='0' cellspacing='0' cellpadding='0'> "
Response.Write "<tr><td rowspan='2'><img src="/upload/tech/20091103/20091103101653_642e92efb79421734881b53e1e1b18b6.gif" width='50'> </td>"
for i3=1 to i1-1
Response.Write "<td>"&findr(i3)&":</td>"
next
Response.Write "</tr><tr>" '<td></td>
for i2=1 to i1-1
Response.Write "<td><input type='text' name='key_word"&i2&"' size='8' value=''></td>"
next

Response.Write "<tr></table></td><td width='20%'> <input type='checkbox' name='find_fr' value='yes'>精确 <input type='submit' value='开始' name='B_FIND'></td>"
Response.Write