Jo hier kommts Markus -
ich hatte bisher aspupload von perists als Testversion benutzt.
Leider arbeite ich hier an ner Fachhochschule und die hat chronischen Geldmangel , daher zur ZEit
kein Softwarekauf ;-(
 
Hier also mal die upload.asp und die Samaschke_upload.asp als include file, wie sie ohne ver�nderten Code von Carsten Samaschke kommt:
1.upload.asp:
 
<!--#include file="samaschke_upload.asp"-->
<%
 Dim myDatei, myForm, sDateiName, sTemp
 call getData(myDatei, myForm)
 If Len(Trim(myDatei("datei").Item("FileName")))>0 Then
  sTemp=myDatei("datei").Item("FileName")
  sDateiName=myForm("pfad") & Split(sTemp,"\")(Ubound(Split(sTemp,"\")))
  call SaveFile(myDatei("datei").Item("value"), sDateiName)
  bOk=True
 Else
  bOk=False
 End If
%>
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0 Transitional//EN">
 
<html>
<head>
 <title>Ergebnis</title>
</head>
 
<body>
<%If bOk Then%>Die Datei <%=sTemp%> wurde erfolgreich gespeichert.<%End If%>
 

</body>
</html>
 
 
und hier
2. samaschke_upload.asp:
 

<%
Dim madeInit
Dim myResponse
Dim mySession
Dim myRequest
Dim myServer
 
' Initialisierung
Private Sub init()
    madeInit = True
End Sub
 

Public Function getData(myDatei, myForm)
    Dim UploadRequest
    Set UploadRequest = CreateObject("Scripting.Dictionary")
    Set myDatei = CreateObject("Scripting.Dictionary")
    Set myForm = CreateObject("Scripting.Dictionary")
    RequestBin = Request.BinaryRead(Request.TotalBytes)
    'Get the boundary
    PosBeg = 1
    PosEnd = InStrB(PosBeg, RequestBin, getByteString(Chr(13)))
    boundary = MidB(RequestBin, PosBeg, PosEnd - PosBeg)
    BoundaryPos = InStrB(1, RequestBin, boundary)
    'Get all data inside the boundaries
    Do Until (BoundaryPos = InStrB(RequestBin, boundary & getByteString("--")))
    'Members variable of objects are put in a dictionary object
        Dim UploadControl
        Set UploadControl = CreateObject("Scripting.Dictionary")
        'Get an object name
        Pos = InStrB(BoundaryPos, RequestBin, getByteString("Content-Disposition"))
        Pos = InStrB(Pos, RequestBin, getByteString("name="))
        PosBeg = Pos + 6
        PosEnd = InStrB(PosBeg, RequestBin, getByteString(Chr(34)))
        Name = getString(MidB(RequestBin, PosBeg, PosEnd - PosBeg))
        PosFile = InStrB(BoundaryPos, RequestBin, getByteString("filename="))
        PosBound = InStrB(PosEnd, RequestBin, boundary)
        'Test if object is of file type
        If PosFile <> 0 And (PosFile < PosBound) Then
            'Get Filename, content-type and content of file
            PosBeg = PosFile + 10
            PosEnd = InStrB(PosBeg, RequestBin, getByteString(Chr(34)))
            FileName = getString(MidB(RequestBin, PosBeg, PosEnd - PosBeg))
            'Add filename to dictionary object
            UploadControl.Add "FileName", FileName
            Pos = InStrB(PosEnd, RequestBin, getByteString("Content-Type:"))
            PosBeg = Pos + 14
            PosEnd = InStrB(PosBeg, RequestBin, getByteString(Chr(13)))
            'Add content-type to dictionary object
            ContentType = getString(MidB(RequestBin, PosBeg, PosEnd - PosBeg))
            UploadControl.Add "ContentType", ContentType
            'Get content of object
            PosBeg = PosEnd + 4
            PosEnd = InStrB(PosBeg, RequestBin, boundary) - 2
            Value = MidB(RequestBin, PosBeg, PosEnd - PosBeg)
            UploadControl.Add "Value", Value
            myDatei.Add Name, UploadControl
        Else
            'Get content of object
            Pos = InStrB(Pos, RequestBin, getByteString(Chr(13)))
            PosBeg = Pos + 4
            PosEnd = InStrB(PosBeg, RequestBin, boundary) - 2
            Value = getString(MidB(RequestBin, PosBeg, PosEnd - PosBeg))
            myForm.Add Name, Value
        End If
        'Loop to next object
        BoundaryPos = InStrB(BoundaryPos + LenB(boundary), RequestBin, boundary)
    Loop
End Function
 
'Byte string to string conversion
Private Function getString(StringBin)
    getString = ""
    For intCount = 1 To LenB(StringBin)
        getString = getString & Chr(AscB(MidB(StringBin, intCount, 1)))
    Next
End Function
 
'String to byte string conversion
Private Function getByteString(StringStr)
    For i = 1 To Len(StringStr)
        Char = Mid(StringStr, i, 1)
        getByteString = getByteString & ChrB(AscB(Char))
    Next
End Function
 

Public Function SaveFile(inhalt, dateiname)
    Set ScriptObject = CreateObject("Scripting.FileSystemObject")
    Set MyFile = ScriptObject.CreateTextFile(dateiname)
    For i = 1 To LenB(inhalt)
        MyFile.Write Chr(AscB(MidB(inhalt, i, 1)))
    Next
    MyFile.Close
End Function
%>
 
Danke f�r die M�he
 
Oliver
| Oft Gefragtes: http://www.aspgerman.com/aspgerman/faq/ | [aspdebeginners] als [email protected] subscribed | http://www.aspgerman.com/archiv/aspdebeginners/ = Listenarchiv | Sie knnen sich unter folgender URL an- und abmelden: | http://www.aspgerman.com/aspgerman/listen/anmelden/aspdebeginners.asp

Antwort per Email an