[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  "³É¹¦É¾³ý£¡"

¡¡¡¡%>