Hoi mensen, ik heb op dit moment de volgende code
en wordt aangeroepen met bv
maar nu zit ik met het versturen van grote bestanden, dit kan a, nogwel eens kleine problemen opleveren (timeouts?) en b, wil ik tijdens het uploaden van het bestand graag statistieken opmaken dus als ik het bestandje bv met blokken van 1024 bytes per keer kan versturen zou ik de statistieken beter kunnen weergeven.
Verder ben ik opzoek naar de referentie van het oHTTP object of hoe je het ook wil noemen maar kan helaas geen juiste documentatie vinden.
Nu is de vraag aan jullie; is dit mogelijk en zo ja point me dan in de juiste directie..
code:
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
| Public Function uploadFile(ByVal weburl As String, ByVal code As String, ByVal file As String) As String
Dim strText As String
Dim s$
Dim strBody As String
Dim aPostData() As Byte
Dim strFileName1 As String
Dim oHTTP As XMLHTTP
Dim nFile As Integer
'make use of the XMLHTTPRequest object contained in msxml.dll
Set oHTTP = New XMLHTTP
'read the whole text file
strFileName1 = file
nFile = FreeFile
Open strFileName1 For Binary As #nFile
strText = String(LOF(nFile), " ")
Get #nFile, , strText
Close #nFile
'fire of an http request !!! adapt path in next line
oHTTP.Open "POST", weburl & "plugin/plugin.php?upload=true", False
oHTTP.setRequestHeader "Content-Type", "multipart/form-data, boundary=AaB03x"
'assemble the body. send one field and two files
strBody = _
"--AaB03x" & vbCrLf & _
"Content-Disposition: form-data; name=""code""" & vbCrLf & vbCrLf & _
code & vbCrLf & _
"--AaB03x" & vbCrLf & _
"Content-Disposition: attachment; name=""picture""; filename=""" & strFileName1 & """" & vbCrLf & _
"Content-Type: image" & vbCrLf & vbCrLf & _
strText & vbCrLf & _
"--AaB03x" & vbCrLf & _
"Content-Disposition: form-data; name=""submit""" & vbCrLf & vbCrLf & _
"Send" & vbCrLf & _
"--AaB03x--"
'must convert to byte array because of binary zeros
aPostData = StrConv(strBody, vbFromUnicode)
'send it (kan dit veranderd worden? zo ja leg me dat eens uit.
oHTTP.send aPostData
' send info back.
uploadFile = oHTTP.responseText
End Function |
en wordt aangeroepen met bv
code:
1
| x = uploadFile("http://localhost/upload/","webcode","c:/test.jpg") |
maar nu zit ik met het versturen van grote bestanden, dit kan a, nogwel eens kleine problemen opleveren (timeouts?) en b, wil ik tijdens het uploaden van het bestand graag statistieken opmaken dus als ik het bestandje bv met blokken van 1024 bytes per keer kan versturen zou ik de statistieken beter kunnen weergeven.
Verder ben ik opzoek naar de referentie van het oHTTP object of hoe je het ook wil noemen maar kan helaas geen juiste documentatie vinden.
Nu is de vraag aan jullie; is dit mogelijk en zo ja point me dan in de juiste directie..