⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 ixs_clsup.asp

📁 不错的一个网站哦, 不错的一个网站哦
💻 ASP
📖 第 1 页 / 共 2 页
字号:
							ObjForm.Add StrInam & "_Height", Bin2Val(BinItem.Read(2))
							ObjForm.Add StrInam & "_Width", Bin2Val(BinItem.Read(2))
						ElseIf InStr(StrFtyp, "/png") > 0 Then
							If LCase(StrFext) <> "png" Then StrFext = "png"
							BinItem.Position = 18
							ObjForm.Add StrInam & "_Width", Bin2Val(BinItem.Read(2))
							BinItem.Read(2)
							ObjForm.Add StrInam & "_Height", Bin2Val(BinItem.Read(2))
						ElseIf InStr(StrFtyp, "/gif") > 0 Then
							If LCase(StrFext) <> "gif" Then StrFext="gif"
							BinItem.Position = 6
							ObjForm.Add StrInam & "_Width", BinVal2(BinItem.Read(2))
							ObjForm.Add StrInam & "_Height", BinVal2(BinItem.Read(2))
						ElseIf InStr(StrFtyp, "/bmp") > 0 Then
							If LCase(StrFext) <> "bmp" Then StrFext="bmp"
							BinItem.Position = 18
							ObjForm.Add StrInam & "_Width", BinVal2(BinItem.Read(4))
							ObjForm.Add StrInam & "_Height", BinVal2(BinItem.Read(4))
						Else
							' **************************************
							' 其他图片,强制返回 4 : 3 
							' **************************************
								ObjForm.Add StrInam & "_Width", 200
								ObjForm.Add StrInam & "_Height", 150
							' **************************************
						End If
					ElseIf InStr(StrFtyp, "shockwave-flash") > 0 Then
						' **************************************
						' 增加检测FLASH文件宽度和高度的方法
						' MIME:application/x-shockwave-flash
						' **************************************
						If LCase(StrFext) <> "swf" Then StrFext="swf"
						Dim BinData, sConv, nBits
						BinItem.Position = 0
						BinItem.Type = 1
						BinItem.Read(8)
						BinData = BinItem.Read(1)
						sConv = Num2Str(AscB(BinData), 2 ,8)
						nBits = Str2Num(Left(sConv, 5), 2)
						sConv = Mid(sConv, 6)
						While (Len(sConv) < nBits * 4)
							BinData = BinItem.Read(1)
							sConv = sConv & Num2Str(AscB(BinData), 2 ,8)
						Wend
						ObjForm.Add StrInam & "_Width", Int(Abs(Str2Num(Mid(sConv, 1 * nBits + 1, nBits), 2) - Str2Num(Mid(sConv, 0 * nBits + 1, nBits), 2)) / 20)
						ObjForm.Add StrInam & "_Height", Int(Abs(Str2Num(Mid(sConv, 3 * nBits + 1, nBits), 2) - Str2Num(Mid(sConv, 2 * nBits + 1, nBits), 2)) / 20)
					Else
						' **************************************
						' 当获取的对象不是图片和FLASH的时候,强制返回 0
						' **************************************
							ObjForm.Add StrInam & "_Width", 0
							ObjForm.Add StrInam & "_Height", 0
						' **************************************
					End If
					ObjForm.Add StrInam & "_Ext", StrFext
					ObjForm.Add StrInam & "_From", P_Start
					IntTemp = GetFerr(LngFsiz, StrFext)
					If P_AutoSave <> 2 Then
						ObjForm.Add StrInam & "_Err", IntTemp
						If IntTemp = 0 Then
							If P_AutoSave = 0 Then
								StrFnam = GetTimeStr()
								If StrFext <> "" Then StrFnam = StrFnam & "." & StrFext
							End If
							BinItem.SaveToFile Server.MapPath(P_SavePath & StrFnam), 2
							ObjForm.Add StrInam, StrFnam
						End If
					End If
				Else
					ObjForm.Add StrInam & "_Err", -1
				End If
			End If
			Else
				BinItem.Position = 0
				BinItem.Type = 2
				BinItem.Charset = "gb2312"
				StrTemp = BinItem.ReadText
				If ObjForm.Exists(StrInam) Then
					ObjForm(StrInam) = ObjForm(StrInam) & "," & StrTemp
				Else
					StrFormItem = StrFormItem & StrSplit & StrInam
					ObjForm.Add StrInam, StrTemp
				End If
			End If

			BinItem.Close()
			P_Start = P_End + IntSeparator + 2
		Loop Until P_Start + 3 > LngRequestSize
		FormItem = split(StrFormItem, StrSplit)
		FileItem = split(StrFileItem, StrSplit)
	End Sub
	' ============================================
	' 获取时间整数串 作为文件名称
	' ============================================
	Private Function GetTimeStr()
		LngTime = LngTime + 1
		GetTimeStr = StrDate & LngTime
	End Function

	Private Function GetFerr(LngFsiz, StrFext)
		Dim IntFerr
		IntFerr = 0
		If LngFsiz > P_MaxSize And P_MaxSize > 0 Then
			If P_Error = 0 Or P_Error = 2 Then P_Error = P_Error + 1
			IntFerr = IntFerr + 1
		End If
		If InStr(1, LCase("/" & P_FileType & "/"), LCase("/" & StrFext & "/")) = 0 And P_FileType <> "" Then
			If P_Error < 2 Then P_Error = P_Error + 2
			IntFerr = IntFerr + 2
		End If
		GetFerr = IntFerr
	End Function
	' ============================================
	' 保存文件,成功保存返回Ture,否则返回False
	' ============================================
	Public Function Save(Item, StrFnam)
		Rem ******************************************
		Rem Item是表单中file元素
		Rem Name是保存的文件名,可选值:
		Rem   0:自动取无重复的服务器时间字符串为文件名
		Rem   1:自动取源文件名
		Rem ******************************************
		Save = False
		If ObjForm.Exists(Item & "_From") Then
			Dim IntFerr, StrFext
			StrFext = ObjForm(Item & "_Ext")
			IntFerr = GetFerr(ObjForm(Item & "_Size"), StrFext)
			If ObjForm.Exists(Item & "_Err") Then
				If IntFerr = 0 Then
					ObjForm(Item & "_Err") = 0
				End If
			Else
				ObjForm.Add Item & "_Err", IntFerr
			End If
			If IntFerr <> 0 Then Exit Function
			If VarType(StrFnam) = 2 Then
				Select Case StrFnam
					Case 0
						StrFnam = GetTimeStr()
						If StrFext <> "" Then StrFnam = StrFnam & "." & StrFext
					Case 1
						StrFnam = ObjForm(Item & "_Name")
				End Select
			End If
			BinItem.Type = 1
			BinItem.Open
			BinForm.Position = ObjForm(Item & "_From")
			BinForm.CopyTo BinItem,ObjForm(Item & "_Size")
			BinItem.SaveToFile Server.MapPath(P_SavePath & StrFnam), 2
			BinItem.Close()
			If ObjForm.Exists(Item) Then
				ObjForm(Item) = StrFnam
			Else
				ObjForm.Add Item, StrFnam
			End If
			Save = True
		End If
	End Function
	' ============================================
	' 获取数据流,可用来保存文件到数据库,试图获取非文件数据时返回空值
	' ============================================
	Public Function GetData(Item)
		GetData = ""
		If ObjForm.Exists(Item & "_From") Then
			If GetFerr(ObjForm(Item & "_Size"), ObjForm(Item & "_Ext")) <> 0 Then Exit Function
			BinForm.Position = ObjForm(Item & "_From")
			GetData = BinFormStream.Read(ObjForm(Item & "_Size"))
		End If
	End Function
	' ============================================
	' 返回文件信息
	' ============================================
	Public Function Form(Item)
		If ObjForm.Exists(Item) Then
			Form = ObjForm(Item)
		Else
			Form = ""
		End If
	End Function
	' ============================================
	' 转换到二进制
	' ============================================
	Private Function BinVal2(Bin)
		Dim LngValue,i
		LngValue = 0
		For i = LenB(Bin) to 1 Step -1
			LngValue = LngValue * 256 + AscB(MidB(Bin, i, 1))
		Next
		BinVal2 = LngValue
	End Function
	' ============================================
	' 二进制转换
	' ============================================
	Private Function Bin2Val(Bin)
		Dim LngValue, i
		LngValue = 0
		For i = 1 To LenB(Bin)
			LngValue = LngValue * 256 + AscB(MidB(Bin, i, 1))
		Next
		Bin2Val = LngValue
	End Function

    Private Function Num2Str(Num, Base, Lens)
        Dim Ret
        Ret = ""
        While(Num >= Base)
            Ret = (Num Mod Base) & Ret
            Num = (Num - Num Mod Base) / Base
        Wend
        Num2Str = Right(String(Lens, "0") & Num & Ret, Lens)
    End Function
	
    Private Function Str2Num(Str, Base)
        Dim Ret, I
        Ret = 0 
        For I = 1 To Len(Str)
            Ret = Ret * base + Cint(Mid(Str, I, 1))
        Next
        Str2Num = Ret
    End Function
End Class

' ============================================
' 检测文件夹是否存在 如果不存在就自动创建
' ============================================
Private Function CreatePath(StrPath)
	Dim ObjFSO, Fsofolder, UpLoadPath
	Dim m
	m = Month(Now)
	If Len(m) = 1 Then m = "0" & m
	UpLoadPath = Year(now) & "-" & m	'以年月创建上传文件夹,格式:2005-04
	On Error Resume Next
	Set ObjFSO = Server.CreateObject("Scripting.FileSystemObject")
		If ObjFSO.FolderExists(Server.MapPath(StrPath & UpLoadPath)) = False Then
			ObjFSO.CreateFolder Server.MapPath(StrPath & UpLoadPath)
		End If
		If Err.Number = 0 Then
			Err.Clear
			CreatePath = UpLoadPath & "\"
		Else
			CreatePath = ""
		End If
	Set ObjFSO = Nothing
End Function
%>

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -