zoukankan      html  css  js  c++  java
  • 老笔记整理一: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的概念),这种代码的化归思想一直在我现在的工作项目中给予我莫大的帮助。

  • 相关阅读:
    nginx能访问html静态文件但无法访问php文件
    LeetCode "498. Diagonal Traverse"
    LeetCode "Teemo Attacking"
    LeetCode "501. Find Mode in Binary Search Tree"
    LeetCode "483. Smallest Good Base" !!
    LeetCode "467. Unique Substrings in Wraparound String" !!
    LeetCode "437. Path Sum III"
    LeetCode "454. 4Sum II"
    LeetCode "445. Add Two Numbers II"
    LeetCode "486. Predict the Winner" !!
  • 原文地址:https://www.cnblogs.com/shining77/p/7134073.html
Copyright © 2011-2022 走看看