Hi all. Sorry for my bad english!
As a lot of italian webmasters, I have a little problem to use upload functions of your software (avatar and images in the forum) in my hosting space (Windows Server 2003).
My hosting plan on http://www.aruba.it - www.aruba.it has the upload features disabled, means that we can't install thirdy parts DLL and our "hoster" doesn't have one installed ready to use in our hosting plans like many others.
We can only use a FormUpload made by Aruba webmasters and we can only upload in a folder named "public", that is the only one with "write" permissions (we can create subfolder under, I can test if you need!).
The FORMUPLOAD module, consists in three webpages:
1) HTML module
2) ASP processing file
3) ASP funcions file
and all three files must be placed in "public" folder.
So, if we would like to upload anything on website, we must install those files in "public" folder and use them via browser to upload a file (ie: http://www.mydomain.com/public/form_upload_01.htm - www.mydomain.com/public/form_upload_01.htm ).
The ask is:
is possible for you to modify the upload features in this nice and cool forum application so that we can use the Aruba procedure?
I tryed, but I'v got a few problems because I don't know Web Wiz Forums functions in depth. So I think that developers that writed the forum code, can help us in very fast mode than me!
This is also the problem that other users have here in your forum (searching ARUBA on this forum).
So, the Aruba code for your information:
Page form_upload_01.htm
<HTML> <HEAD> <META NAME="GENERATOR" Content="Microsoft FrontPage 4.0"> <TITLE></TITLE> </HEAD> <BODY bgcolor="#FFCB8C">
<div align="center"> <center> <table border="0" cellpadding="0" cellspacing="0" width="100%"> <tr> <td width="100%">
<FORM METHOD="Post" ENCTYPE="multipart/form-data" ACTION="outputFile.asp"> <p align="center"><font face="Verdana" size="2"> File : <INPUT TYPE="file" NAME="blob"><BR> <INPUT TYPE="submit" NAME="Enter"> </font> </FORM>
</center> <p align="left"> </td> </tr> <tr> <td width="100%">
</td> </tr> </table> </div>
</BODY> </HTML>
Page outputFile.asp
<!--#include file="upload.asp"--> <%Response.Expires=0 Response.Buffer = TRUE Response.Clear byteCount = Request.TotalBytes RequestBin = Request.BinaryRead(byteCount) Dim UploadRequest Set UploadRequest = CreateObject("Scripting.Dictionary") BuildUploadRequest RequestBin contentType = UploadRequest.Item("blob").Item("ContentType") filepathname = UploadRequest.Item("blob").Item("FileName") filename = Right(filepathname,Len(filepathname)-InstrRev(filepathname,"\")) value = UploadRequest.Item("blob").Item("Value")
'Create FileSytemObject Component Set ScriptObject = Server.CreateObject("Scripting.FileSystemObject")
'Create and Write to a File pathEnd = Len(Server.mappath(Request.ServerVariables("PATH_INFO")))-14 Set MyFile = ScriptObject.CreateTextFile(Left(Server.mappath(Request.ServerVariables("PATH_INFO")),pathEnd) & filename) For i = 1 to LenB(value) MyFile.Write chr(AscB(MidB(value,i,1))) Next MyFile.Close%>
<head> <title></title> </head>
<body bgcolor="#FFCB8C">
<p align="center"><font face="Verdana" size="2"> File "<b><%=filename%></b>" ricevuto con successo</font>
File upload.asp
<%Sub BuildUploadRequest(RequestBin) PosBeg = 1 PosEnd = InstrB(PosBeg,RequestBin,getByteString(chr(13))) boundary = MidB(RequestBin,PosBeg,PosEnd-PosBeg) boundaryPos = InstrB(1,RequestBin,boundary) Do until (boundaryPos=InstrB(RequestBin,boundary & getByteString("--"))) Dim UploadControl Set UploadControl = CreateObject("Scripting.Dictionary") 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) If PosFile<>0 AND (PosFile<PosBound) Then PosBeg = PosFile + 10 PosEnd = InstrB(PosBeg,RequestBin,getByteString(chr(34))) FileName = getString(MidB(RequestBin,PosBeg,PosEnd-PosBeg)) UploadControl.Add "FileName", FileName Pos = InstrB(PosEnd,RequestBin,getByteString("Content-Type:")) PosBeg = Pos+14 PosEnd = InstrB(PosBeg,RequestBin,getByteString(chr(13))) ContentType = getString(MidB(RequestBin,PosBeg,PosEnd-PosBeg)) UploadControl.Add "ContentType",ContentType PosBeg = PosEnd+4 PosEnd = InstrB(PosBeg,RequestBin,boundary)-2 Value = MidB(RequestBin,PosBeg,PosEnd-PosBeg) Else Pos = InstrB(Pos,RequestBin,getByteString(chr(13))) PosBeg = Pos+4 PosEnd = InstrB(PosBeg,RequestBin,boundary)-2 Value = getString(MidB(RequestBin,PosBeg,PosEnd-PosBeg)) End If UploadControl.Add "Value" , Value UploadRequest.Add name, UploadControl BoundaryPos=InstrB(BoundaryPos+LenB(boundary),RequestBin,boundary) Loop End Sub Function getByteString(StringStr) For i = 1 to Len(StringStr) char = Mid(StringStr,i,1) getByteString = getByteString & chrB(AscB(char)) Next End Function Function getString(StringBin) getString ="" For intCount = 1 to LenB(StringBin) getString = getString & chr(AscB(MidB(StringBin,intCount,1))) Next End Function%>
All three files above MUST BE IN FOLDER NAMED "PUBLIC" and can't be moved in other folders.
All files available here (in italian):
http://vademecum.aruba.it/start/upload/upload.zip - http://vademecum.aruba.it/start/upload/upload.zip
link from this "help" page:
|