当前位置: 首页 > 图文教程 > 网络编程 > ASP > ASP技巧实例:关于对表单操作的程序

ASP
ASP里面令人震撼地Debug类(VBScript)
提供个 全免杀海洋2006asp木马 下载
VBS加密免杀器 下载
asp页面下的乱码问题终于解决了
一款不错的asp木马 黑色界面
七步倒┈→专用asp后门
ASP对网页进行保护的简单代码 ip
asp遍历站点所有文件夹的代码
用js实现QQ在线查询功能
非常不错的ASP+Access数据库的终极安全大法18则
万能Asp防注入代码 拒绝攻击
用asp实现把文件打包成Xml文件包,带解包的ASP工具附下载
asp下实现代码的“运行代码”“复制代码”“保存代码”功能源码
asp字符串加密解密函数
asp adodb.stream对象的方法/属性
asp rs.open sql,conn,3,1中3,1代表什么?
推荐ASP中VBScript常用函数
ASP的Global.asa使用说明
ASP七大对象说明分析
ASP网站生成静态html页面技术小结

ASP技巧实例:关于对表单操作的程序


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

以下为引用的内容:

Inserting Form content into Database with ASP.

<%
  ' -- Loader.asp --
  ' -- version 1.5.2
  ' -- last updated 12/5/2002
  '
  ' Faisal Khan
  ' [email protected]
  ' www.stardeveloper.com
  ' Class for handling binary uploads

  Class Loader
    Private dict
   
    Private Sub Class_Initialize
      Set dict = Server.CreateObject("Scripting.Dictionary")
    End Sub

    Private Sub Class_Terminate
      If IsObject(intDict) Then
        intDict.RemoveAll
        Set intDict = Nothing
      End If
      If IsObject(dict) Then
        dict.RemoveAll
        Set dict = Nothing
      End If
    End Sub

    Public Property Get Count
      Count = dict.Count
    End Property

    Public Sub Initialize
      If Request.TotalBytes > 0 Then
        Dim binData
          binData = Request.BinaryRead(Request.TotalBytes)
          getData binData
      End If
    End Sub

    Public Function getFileData(name)
      If dict.Exists(name) Then
        getFileData = dict(name).Item("Value")
        Else
        getFileData = ""
      End If
    End Function

    Public Function getValue(name)
      Dim gv
      If dict.Exists(name) Then
        gv = CStr(dict(name).Item("Value"))
       
        gv = Left(gv,Len(gv)-2)
        getValue = gv
      Else
        getValue = ""
      End If
    End Function

    Public Function saveToFile(name, path)
      If dict.Exists(name) Then
        Dim temp
          temp = dict(name).Item("Value")
        Dim fso
          Set fso = Server.CreateObject("Scripting.FileSystemObject")
        Dim file
          Set file = fso.CreateTextFile(path)
            For tPoint = 1 to LenB(temp)
                file.Write Chr(AscB(MidB(temp,tPoint,1)))
            Next
            file.Close
          saveToFile = True
      Else
          saveToFile = False
      End If
    End Function

    Public Function getFileName(name)
      If dict.Exists(name) Then
        Dim temp, tempPos
          temp = dict(name).Item("FileName")
          tempPos = 1 + InStrRev(temp, "\")
          getFileName = Mid(temp, tempPos)
      Else
        getFileName = ""
      End If
    End Function

    Public Function getFilePath(name)
      If dict.Exists(name) Then
        Dim temp, tempPos
          temp = dict(name).Item("FileName")
          tempPos = InStrRev(temp, "\")
          getFilePath = Mid(temp, 1, tempPos)
      Else
        getFilePath = ""
      End If
    End Function

    Public Function getFilePathComplete(name)
      If dict.Exists(name) Then
        getFilePathComplete = dict(name).Item("FileName")
      Else
        getFilePathComplete = ""
      End If
    End Function

    Public Function getFileSize(name)
      If dict.Exists(name) Then
        getFileSize = LenB(dict(name).Item("Value"))
      Else
        getFileSize = 0
      End If
    End Function

    Public Function getFileSizeTranslated(name)
      If dict.Exists(name) Then
        temp = LenB(dict(name).Item("Value"))
          If temp <= 1024 Then
            getFileSizeTranslated = temp & " bytes" 
          Else
            temp = FormatNumber((temp / 1024), 2)
            getFileSizeTranslated = temp & " kilobytes"
          End If
      Else
        getFileSizeTranslated = ""
      End If
    End Function

    Public Function getContentType(name)
      If dict.Exists(name) Then
        getContentType = dict(name).Item("ContentType")
      Else
        getContentType = ""
      End If
    End Function

  Private Sub getData(rawData)
    Dim separator
      separator = MidB(rawData, 1, InstrB(1, rawData, ChrB(13)) - 1)

    Dim lenSeparator
      lenSeparator = LenB(separator)

    Dim currentPos
      currentPos = 1
    Dim inStrByte
      inStrByte = 1
    Dim value, mValue
    Dim tempValue
      tempValue = ""

    While inStrByte > 0
      inStrByte = InStrB(currentPos, rawData, separator)
      mValue = inStrByte - currentPos

      If mValue > 1 Then
        value = MidB(rawData, currentPos, mValue)

        Dim begPos, endPos, midValue, nValue
        Dim intDict
          Set intDict = Server.CreateObject("Scripting.Dictionary")

          begPos = 1 + InStrB(1, value, ChrB(34))
          endPos = InStrB(begPos + 1, value, ChrB(34))
          nValue = endPos

        Dim nameN
          nameN = MidB(value, begPos, endPos - begPos)

        Dim nameValue, isValid
          isValid = True
         
          If InStrB(1, value, stringToByte("Content-Type")) > 1 Then

            begPos = 1 + InStrB(endPos + 1, value, ChrB(34))
            endPos = InStrB(begPos + 1, value, ChrB(34))

            If endPos = 0 Then
              endPos = begPos + 1
              isValid = False
            End If

            midValue = MidB(value, begPos, endPos - begPos)
              intDict.Add "FileName", trim(byteToString(midValue))

          begPos = 14 + InStrB(endPos + 1, value, stringToByte("Content-Type:"))
          endPos = InStrB(begPos, value, ChrB(13))

            midValue = MidB(value, begPos, endPos - begPos)
              intDict.Add "ContentType", trim(byteToString(midValue))

            begPos = endPos + 4
            endPos = LenB(value)

            nameValue = MidB(value, begPos, ((endPos - begPos) - 1))
          Else
            nameValue = trim(byteToString(MidB(value, nValue + 5)))
          End If

          If isValid = True Then

            intDict.Add "Value", nameValue
            intDict.Add "Name", nameN

            dict.Add byteToString(nameN), intDict
          End If
      End If

      currentPos = lenSeparator + inStrByte
    Wend
  End Sub
 
  End Class

  Private Function stringToByte(toConv)
    Dim tempChar
     For i = 1 to Len(toConv)
       tempChar = Mid(toConv, i, 1)
      stringToByte = stringToByte & chrB(AscB(tempChar))
     Next
  End Function

  Private Function byteToString(toConv)
    For i = 1 to LenB(toConv)
      byteToString = byteToString & Chr(AscB(MidB(toConv,i,1)))
    Next
  End Function
%>

1、用户界面: 
<script  language="JavaScript">     
function  CheckAll(form)     
{for  (var  i=0;i<form.elements.length;i++)     
{var  e  =  form.elements[i];     
if  (e.name  !=  'chkall')     
e.checked  =  form.chkall.checked;     
}     
}     
</script>     
 
</head> 
 
<body> 
<form  method="post"  action="del.asp"  name="form1"> 
<table> 
<tr> 
       <td  ><input  type="checkbox"  value="111"  name="TradeName">电子邮件1</td> 
</tr> 
<tr> 
       <td  ><input  type="checkbox"  value="111"  name="TradeName">电子邮件2</td> 
</tr> 
<tr> 
       <td  ><input  type="checkbox"  value="111"  name="TradeName">电子邮件3</td> 
</tr> 
<tr> 
       <td  ><input  type="checkbox"  value="111"  name="TradeName">电子邮件4</td> 
</tr> 
<tr> 
       <td  ><input  type="checkbox"  value="111"  name="TradeName">电子邮件5</td> 
</tr> 
<tr> 
       <td  ><input  type="checkbox"  value="111"  name="TradeName">电子邮件6</td> 
</tr> 
 
<tr> 
       <td  bgcolor="#F1FBFC"  height="25"  colspan="2"> 
           <p  align="left"><input  type="checkbox"  name="chkall"  value="on"  onclick="CheckAll(this.form)"><font  color="#FF9900">选中所有显示的消息</font></p> 
       </td> 
<center> 
        
        
   </tr> 
</table> 
</form> 
2、删除文件del.asp 
<% 
     '这行写连接数据库的代码 
     dim  ID,strID 
     strID="" 
     For  Each    strID  In  Request.Form("TradeName") 
             ID=Cint(strID) 
           if  strID<>""  then 
                   DelRs  =  Server.CreateObject("ADODB.Recordset") 
                 Conn.Execute  "Delete  From  Tbname  where  ID="&Cstr(ID)   
               strID="" 
       end  if 
 Next 
    
   Conn.Close 
   Set  Conn  =  Nothing 
   Response.Redirect  "成功删除!" 
%>