webForumDet fria alternativet

Nån som använder AspUpload ?

ASP

2 svar · 189 visningar · startad av nill

Medlem sedan okt. 2001387 inlägg
Frågan#1

Mitt Webhotell har komponenten AspUpload.
Behöver ett litet enkelt script där användaren ska kunnaladda upp en bild (gif eller jpg)... filnamet ska bli Variabel.jpg/gif och kunna skriva över befintlig variabel.jpg/gif.. Samt MaxStorlek 20Kb eller något.

Någon här måste ju sitta på något sådant litet script som jag kan pilla med?

Medlem sedan mars 20002 520 inlägg
#2

Du kan ladda ner en demo av programmet där följer det med en massa olika script som du kan använda. Finns i stort sett script för samtliga olika former som man kan använda det. Sen är det bara upp till dig att mixtra olika alternativ.

------------------
McD- Burgers for the people!

www.McDz.net www.SweQuake.com

Medlem sedan okt. 2001387 inlägg
#3

Hittils har jag använt detta script för upload..
Kanske går det att konfiguera så att mina krav uppfylls ?

Här kommer mycket kod:

uploadaction.asp

<%@ Language=VBScript %>
<!-- #include file="adovbs.mupp" -->
<!-- #include file="upload.asp" -->
<%
' Create the FileUploader
Dim Uploader, File
Set Uploader = New FileUploader

' This starts the upload process
Uploader.Upload()

'******************************************
' Use [FileUploader object].Form to access
' additional form variables submitted with
' the file upload(s). (used below)
'******************************************

' Check if any files were uploaded
If Uploader.Files.Count = 0 Then
Response.Write "File(s) not uploaded."
Else
' Loop through the uploaded files
For Each File In Uploader.Files.Items
' Save the file
File.SaveToDisk server.mappath("/klass/upload/")
' Output the file details to the browser
Response.Write "File Uploaded: " & File.FileName & "<br>"
Response.Write "Size: " & File.FileSize & " bytes<br>"
Response.Write "Type: " & File.ContentType & "<br><br>"

%\>\<!-- #include virtual="/klass/asp/include/koppling_upload.asp" --\>\<%

Uppa = "SELECT \* FROM upload "
RecSet.Open Uppa, Connect, adOpenStatic, adLockOptimistic

RecSet.AddNew
RecSet("path") = File.FileName
RecSet("storlek") = File.FileSize
RecSet("fron") = Session("namn")
RecSet("datum") = Date
RecSet.Update 

RecSet.Close
Connect.Close

Next

Response.Redirect "normal.asp?what=upload"

End If

%>

'>>>>>>>>>>>> också upload.asp

<%
Class FileUploader
Public Files
Private mcolFormElem

Private Sub Class_Initialize()
	Set Files = Server.CreateObject("Scripting.Dictionary")
	Set mcolFormElem = Server.CreateObject("Scripting.Dictionary")
End Sub

Private Sub Class_Terminate()
	If IsObject(Files) Then
		Files.RemoveAll()
		Set Files = Nothing
	End If
	If IsObject(mcolFormElem) Then
		mcolFormElem.RemoveAll()
		Set mcolFormElem = Nothing
	End If
End Sub

Public Property Get Form(sIndex)
	Form = ""
	If mcolFormElem.Exists(LCase(sIndex)) Then Form = mcolFormElem.Item(LCase(sIndex))
End Property

Public Default Sub Upload()
	Dim biData, sInputName
	Dim nPosBegin, nPosEnd, nPos, vDataBounds, nDataBoundPos
	Dim nPosFile, nPosBound

	biData = Request.BinaryRead(Request.TotalBytes)
	nPosBegin = 1
	nPosEnd = InstrB(nPosBegin, biData, CByteString(Chr(13)))
	
	If (nPosEnd-nPosBegin) \<= 0 Then Exit Sub
	 
	vDataBounds = MidB(biData, nPosBegin, nPosEnd-nPosBegin)
	nDataBoundPos = InstrB(1, biData, vDataBounds)
	
	Do Until nDataBoundPos = InstrB(biData, vDataBounds & CByteString("--"))
		
		nPos = InstrB(nDataBoundPos, biData, CByteString("Content-Disposition"))
		nPos = InstrB(nPos, biData, CByteString("name="))
		nPosBegin = nPos + 6
		nPosEnd = InstrB(nPosBegin, biData, CByteString(Chr(34)))
		sInputName = CWideString(MidB(biData, nPosBegin, nPosEnd-nPosBegin))
		nPosFile = InstrB(nDataBoundPos, biData, CByteString("filename="))
		nPosBound = InstrB(nPosEnd, biData, vDataBounds)
		
		If nPosFile \<\> 0 And  nPosFile \< nPosBound Then
			Dim oUploadFile, sFileName
			Set oUploadFile = New UploadedFile
			
			nPosBegin = nPosFile + 10
			nPosEnd =  InstrB(nPosBegin, biData, CByteString(Chr(34)))
			sFileName = CWideString(MidB(biData, nPosBegin, nPosEnd-nPosBegin))
			oUploadFile.FileName = Right(sFileName, Len(sFileName)-InStrRev(sFileName, "\\"))

			nPos = InstrB(nPosEnd, biData, CByteString("Content-Type:"))
			nPosBegin = nPos + 14
			nPosEnd = InstrB(nPosBegin, biData, CByteString(Chr(13)))
			
			oUploadFile.ContentType = CWideString(MidB(biData, nPosBegin, nPosEnd-nPosBegin))
			
			nPosBegin = nPosEnd+4
			nPosEnd = InstrB(nPosBegin, biData, vDataBounds) - 2
			oUploadFile.FileData = MidB(biData, nPosBegin, nPosEnd-nPosBegin)
			
			If oUploadFile.FileSize \> 0 Then Files.Add LCase(sInputName), oUploadFile
		Else
			nPos = InstrB(nPos, biData, CByteString(Chr(13)))
			nPosBegin = nPos + 4
			nPosEnd = InstrB(nPosBegin, biData, vDataBounds) - 2
			If Not mcolFormElem.Exists(LCase(sInputName)) Then mcolFormElem.Add LCase(sInputName), CWideString(MidB(biData, nPosBegin, nPosEnd-nPosBegin))
		End If

		nDataBoundPos = InstrB(nDataBoundPos + LenB(vDataBounds), biData, vDataBounds)
	Loop
End Sub

'String to byte string conversion
Private Function CByteString(sString)
	Dim nIndex
	For nIndex = 1 to Len(sString)
	   CByteString = CByteString & ChrB(AscB(Mid(sString,nIndex,1)))
	Next
End Function

'Byte string to string conversion
Private Function CWideString(bsString)
	Dim nIndex
	CWideString =""
	For nIndex = 1 to LenB(bsString)
	   CWideString = CWideString & Chr(AscB(MidB(bsString,nIndex,1))) 
	Next
End Function

End Class

Class UploadedFile
Public ContentType
Public FileName
Public FileData

Public Property Get FileSize()
	FileSize = LenB(FileData)
End Property

Public Sub SaveToDisk(sPath)
	Dim oFS, oFile
	Dim nIndex

	If sPath = "" Or FileName = "" Then Exit Sub
	If Mid(sPath, Len(sPath)) \<\> "\\" Then sPath = sPath & "\\"

	Set oFS = Server.CreateObject("Scripting.FileSystemObject")
	If Not oFS.FolderExists(sPath) Then Exit Sub
	
	Set oFile = oFS.CreateTextFile(sPath & FileName, True)
	
	For nIndex = 1 to LenB(FileData)
	    oFile.Write Chr(AscB(MidB(FileData,nIndex,1)))
	Next

	oFile.Close
End Sub

End Class
%>

286 ms totalt · 4 externa anrop · v20260731065814-full.e96017d9
153 ms — deklarationer (db)
0 ms — hämta statistik (cache)
131 ms — hämta tråd, inlägg och bilagor (db)
127 ms — ändringar (db)