首页 > 代码库 > 老笔记整理一:asp

老笔记整理一:asp

学生时代 主要用的是asp 和 asp.net 笔记也写了不少,现在回头看看有不少不错的代码。现整理后贴出来。

自用函数库: fun.asp

  

 1 Dim mConn,mRs
 2 mConn="Driver={Microsoft Access Driver (*.mdb)};DBQ=" & server.MapPath("BBS.mdb")
 3 
 4 public function OpenRs(mSQL)
 5  set OpenRs=server.CreateObject("ADODB.RecordSet")
 6   OpenRs.Open mSQL,mConn
 7 end function
 8 
 9 public sub GetRs(mSQL)
10  set mRs=OpenRs(mSQL)
11 end sub
12 
13 public sub closeRs()
14  mRs.close
15  set mRs=nothing
16 end sub
17 
18 public sub ExcuteRs(mSQL)
19  dim mCmd
20  set mCmd=server.CreateObject("ADODB.Command")
21   mCmd.activeconnection=mConn
22   mCmd.commandtext=mSQL
23   mCmd.execute
24   mCmd.activeconnection.close
25  Set mCmd=nothing
26 end sub
27 
28 public function FindUser(mWhere)
29  dim tr
30  set tr=OpenRs("select * from " & mWhere)
31  if tr.bof and tr.eof then
32   FindUser=false
33  else
34   FindUser=true
35  end if
36 end function
37 
38 public function GetPara(Para)
39  if request.ServerVariables("REQUEST_METHOD")="GET" then 
40   GetPara=request.QueryString(Para)
41  else
42   GetPara=request.Form(Para)
43  end if 
44 end function

 

第一步,我们先要定义两个变量mConn和mRs

1 mConn="Driver={Microsoft Access Driver (*.mdb)};DBQ=" & server.MapPath("BBS.mdb")

 

这里,mConn的作用是连接数据库。而 Driver={Microsoft Access Driver (*.mdb)};DBQ=    这句代码是通过ODBC链接数据库,可以在自定义连接字符串中复制粘贴。而server.MapPath里的BBS.mdb是你数据库的名字。

第一个函数:

1 public function OpenRs(mSQL)
2  set OpenRs=server.CreateObject("ADODB.RecordSet")
3   OpenRs.Open mSQL,mConn
4 end function

 

因为在后面的函数里会有重复使用到的地方,所以我们把公共部分提出来,写成函数。

第二个函数:

1 public sub GetRs(mSQL)
2  set mRs=OpenRs(mSQL)
3 end sub

 

作用为读出数据库。所以只要直接让变量mRs=OpenRs就行了。()中的mSQL是参数的意思。你在调用函数时写入的参数电脑会执行。

第三个函数:

1 public sub closeRs()
2  mRs.close
3  set mRs=nothing
4 end sub

 

此函数的作用是关闭数据库,数据库只开不关,系统会崩溃的。

第四个函数:

1 public sub ExcuteRs(mSQL)
2  dim mCmd
3  set mCmd=server.CreateObject("ADODB.Command")
4   mCmd.activeconnection=mConn
5   mCmd.commandtext=mSQL
6   mCmd.execute
7   mCmd.activeconnection.close
8  Set mCmd=nothing
9 end sub

 

此函数能读写数据库。包括select(查找)undate(更新)delete(删除)insert(写入)

第五个函数:

1 public function FindUser(mWhere)
2  dim tr
3  set tr=OpenRs("select * from " & mWhere)
4  if tr.bof and tr.eof then
5   FindUser=false
6  else
7   FindUser=true
8  end if
9 end function

 

在上一篇登录篇中,在后台我们要做一件事。就是判断我们提交的用户名在数据库中是否存在。如果我们用do loop来循环,虽然也会有相同的效果,但效率会降低很多。因此我们写了这个函数 。我们只要判断第一条与最后一条是否同时满足条件。因为从第一条到最后一条都没有的话,那么此用户一定不存在。只要有一条记录有效,那么这个用户是已经存在的。

第六个函数:

1 public function GetPara(Para)
2  if request.ServerVariables("REQUEST_METHOD")="GET" then 
3   GetPara=request.QueryString(Para)
4  else
5   GetPara=request.Form(Para)
6  end if 
7 end function

 

这是判断参数获得方式的函数。还在为post应该用form还是querystring而烦恼吗?那么有个好消息,你不用再去背了。

request.ServerVariables("REQUEST_METHOD")是参数传递方式的意思。周三上兴趣小组的人应该明白传递方式是什么。传递参数的方式一共有二个。post对form,get对querystring。所以,我们只要作一个简单的判断就行了。当方式是

get的时候,我们用qurtystring;当方式为post时,我们就用form。

今天就是这么多,大家以后若是发现有在多个网页中重复打到的东西,你完全可以写成公共函数放在fun里。 

 

这是09年的时候老师帮我写的函数库,事实证明这个节约了不少工夫与时间。这个是1.0版本,后来转asp.net了以后数据库连接这块就有更好的方式(有初步mvc的概念),这种代码的化归思想一直在我现在的工作项目中给予我莫大的帮助。

老笔记整理一:asp