Help me!!!
Non sono molto ferrata in Asp ma devo fare un upload di un file, ho già provato e ci sono riuscita a farlo su un'altra pagina, ma io volevo farlo sulla stessa pagina dove ho il controllo 'file', posto il codice così magari si capisce meglio...
file immagine.asp
<html>
<head>
<link href="stili/general.css" rel="stylesheet" type="text/css">
<script src="FunzGen.js"></script>
<%
Server.ScriptTimeout=100000
Response.Expires=0
Response.Buffer = TRUE
Response.Clear
'impostazioni variabili
byteCount = Request.TotalBytes
RequestBin = Request.BinaryRead(byteCount)
Set UploadRequest = CreateObject("Scripting.Dictionary")
BuildUploadRequest RequestBin
'individua il tipo di file che si cerca di fare l upload
contentType = UploadRequest.Item("ApriFile").Item("ContentType")
'intero percorso del file
filepathname = UploadRequest.Item("ApriFile").Item("FileName")
'****************************** CONTROLLI IMMAGINE
'controllo tipo immagine
tipo = Right(filepathname,Len(filepathname)-InstrRev(filepathname,"."))
'*********************************** NOME FINALE DEL FILE e UPLOAD
nomefile = Right(filepathname,Len(filepathname)-InstrRev(filepathname,"\"))
'in questa variabile viene salvato il nome del file che sarà del tipo 2311235.gif
filename = nomefile
value = UploadRequest.Item("ApriFile").Item("Value")
Set ScriptObject = Server.CreateObject("Scripting.FileSystemObject")
pathEnd = Len(Server.mappath(Request.ServerVariables("PATH_I NFO")))-14
'da questa riga di codice si specifica l'indirizzo relativo dove sarà inserito il file
Set MyFile = ScriptObject.CreateTextFile(Server.mappath("..\ana grafe\imgs\Temp") & "\" & filename)
For i = 1 to LenB(value)
MyFile.Write chr(AscB(MidB(value,i,1)))
Next
MyFile.Close
%>
</head>
<body bgcolor="#EBF1E4" Vlink="#0000FF" link="#0000FF" alink="#0000FF">
<!--<input TYPE='button' VALUE='Acquisisci immagine' onclick='acquisisci()' style='WIDTH: 150px; HEIGHT: 24px'>
-->
<form enctype="multipart/form-data" method="post" action="">
<input type="file" name="ApriFile" style="WIDTH: 150px; HEIGHT: 24px">
<input TYPE='submit' VALUE='Visualizza immagine' style='WIDTH: 150px; HEIGHT: 24px'>
</form>
<!--<form NAME="pathfile" METHOD="post">
<input type="file" id="aprifile" name="ApriFile" style="WIDTH: 150px; HEIGHT: 24px">
</form>
<input TYPE='button' VALUE='Visualizza immagine' onclick='visualizza()' style='WIDTH: 150px; HEIGHT: 24px'>
-->
<input TYPE="button" VALUE="Salva Multitif" onclick="salvaImg()" style="WIDTH: 150px; HEIGHT: 24px">
<input TYPE="button" DISABLED id="btnElim" name="btnElim" VALUE="Elimina immagine" onclick="eliminaImg()" style="WIDTH: 150px; HEIGHT: 24px">
<!--<input TYPE="button" DISABLED id="btnIns" name="btnIns" VALUE="Inserisci dati" onclick="inserisciDati()" style="WIDTH: 140px; HEIGHT: 24px">
-->
<input TYPE="button" DISABLED id="btnIns" name="btnIns" VALUE="Inserisci dati" onclick="inserisciDati()" style="WIDTH: 150px; HEIGHT: 24px">
<input TYPE="button" VALUE="Effettua nuova ricerca" onclick="vaiParent('checkLogon.asp')" style="WIDTH: 150px; HEIGHT: 24px">
<form NAME="dati" METHOD="post">
<FONT FACE="Verdana, Arial, Helvetica, sans-serif" size="2" color="#339900">Armadio
<input id="arma" name="arma" style="LEFT: 60px; TOP: 53px" value="">
<FONT FACE="Verdana, Arial, Helvetica, sans-serif" size="2" color="#339900">Lotto
<input id="lott" name="lott" style="LEFT: 60px; TOP: 53px" value="">
</form>
<%
if filename <> "00000000.TIF" then
response.Write"<embed name='imag' id='imag' width=550 height=500 src='\anagrafe\imgs\Temp\" & filename & "' type='image/tiff' negative=no>"
response.write"<script language='javascript'> adattaImg(); abilitaElim();"
response.write "<'/script>"
response.write"<script type='text/javascript'> setTimeout('vaiGiu()', 50);"
response.write"<'/script>"
else
''response.write("<FONT FACE='Verdana, Arial, Helvetica, sans-serif' size='2'>[b]
Immagine non disponibile</FONT>")
response.write"<script language='javascript'> msgImg();"
response.write" <'/script>"
end if
%>
</body>
</html>
Questo richiama il file esegui.asp il cui codice è il seguente:
<%
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")
'Get an object name
Pos = InstrB(BoundaryPos,RequestBin,getByteString("Conte nt-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("filen ame="))
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),Requ estBin,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
%>
Io voglio visualizzare il file sempre sulla pagina immagine.asp ma mi dà un errore nel file esegui.asp alla riga 5:
boundary = MidB(RequestBin,PosBeg,PosEnd-PosBeg)
Qualcuno sa dirmi perchè???
Grazie mille

Rispondi quotando
