codice:
<%
if Session("supervisore")<>"supervisore" then
Response.Redirect("login.asp")
end if
'on error resume next
'sponsor = request("sponsor")
'settore = request("settore")
'pagato = request("pagato")
if indice = "" then
indice = " -- -- -- -- "
end if
' Mappaggio del database
Set Conn=Server.CreateObject("ADODB.Connection")
strConn="driver={Microsoft Access Driver (*.mdb)}; "
strConn=strConn & " DBQ=" & Server.MapPath("/mdb-database/sagra09.mdb")
Conn.Open strConn
sql = "SELECT MAX(massimo) FROM sponsor"
Set rs = conn.Execute(sql)
if not rs.EOF then
ultimo = rs(0)
end if
set rs = nothing
if ultimo &"[]" = "[]" then ultimo = 0
sql = "SELECT * FROM sponsor"
Set rs = Server.CreateObject("ADODB.Recordset")
rs.Open sql, conn ,3,3
'Questa variabile setta il percorso di dove effettuare lo upolad
'la cartella non puo non esistere lo script non la crea ! ! !
percorso = "public/sponsor09/"
Server.ScriptTimeout = 500
ByteRicevuti = Request.TotalBytes
if ByteRicevuti > 0 then
DatiRicevuti = Request.BinaryRead(ByteRicevuti)
For i = 1 To lenB(DatiRicevuti)
FileBinario = FileBinario & chr(ascB(midB(DatiRicevuti,i,1)))
Next
FirmaFile = left(FileBinario,instr(FileBinario,"" & vbCrLf)-1)
ArrPezzi = split(FileBinario,FirmaFile)
for item = 1 to ubound(ArrPezzi)-1
Inizio = instr(ArrPezzi(item),"" & vbCrLf & "" & vbCrLf)
Intestazione = left(ArrPezzi(item),Inizio-1)
Inizio = Inizio + len("" & vbCrLf) + len("" & vbCrLf)
ContenutoFile = mid(ArrPezzi(item),Inizio,len(ArrPezzi(item))-Inizio-1)
' Recupero i campi se sono compilati
if instr(Intestazione,"sponsor") > 0 then
sponsor = ContenutoFile
end if
' Nel caso in cui fossero presenti piu campi basta duplicare
' la condizione cambiando unicamente il nome del campo
' es.
if instr(Intestazione,"settore") > 0 then
settore = ContenutoFile
end if
if instr(Intestazione,"pagato") > 0 then
pagato = ContenutoFile
end if
if sponsor = "" then
response.Redirect "inseriscisponsor.asp"
End if
' Qui recupero il file da uploadare (se presente) e lo scrivo
' sul server
if instr(Intestazione,"file1") > 0 then
i = instr(Intestazione,"filename=")
j = instr(i + 10,Intestazione,chr(34))
NomeUpload = mid(Intestazione,i + 10,j-i-10)
i = instrRev(NomeUpload,"\")
if i<>0 then
NomeFile = mid(NomeUpload,i + 1)
else
NomeFile = NomeUpload
end if
if i<>0 then
Set FSO = CreateObject("Scripting.FileSystemObject")
Upload1 = True
DimensioneFile1 = len(ContenutoFile)
EstensioneFile1 = right(ContenutoFile,3)
NomeFile1 = NomeFile
Set textStream = FSO.CreateTextFile(server.mappath(percorso & NomeFile1), True, False)
textStream.Write ContenutoFile
textStream.Close
Set textStream = Nothing
Set FSO = Nothing
end if
end if
' Lo stesso discorso vale anche per i campi dei file :
' Nel caso in cui fossero presenti piu file basta duplicare
' la condizione cambiando unicamente il nome del campo
' es.
'if instr(Intestazione,"file2") > 0 then
' i = instr(Intestazione,"filename = ")
' j = instr(i + 10,Intestazione,chr(34))
' NomeUpload = mid(Intestazione,i + 10,j-i-10)
' i = instrRev(NomeUpload,"\")
' if i<>0 then
' NomeFile = mid(NomeUpload,i + 1)
' else
' NomeFile = NomeUpload
' end if
' if i<>0 then
' Set FSO = CreateObject("Scripting.FileSystemObject")
' Upload2 = True
' DimensioneFile2 = len(ContenutoFile)
' EstensioneFile2 = right(ContenutoFile,3)
' NomeFile2 = NomeFile
' Set textStream = FSO.CreateTextFile(server.mappath(percorso & NomeFile2), True, False)
' textStream.Write ContenutoFile
' textStream.Close
' Set textStream = Nothing
' Set FSO = Nothing
' end if
'end if
'if instr(Intestazione,"file3") > 0 then
' i = instr(Intestazione,"filename = ")
' j = instr(i + 10,Intestazione,chr(34))
' NomeUpload = mid(Intestazione,i + 10,j-i-10)
' i = instrRev(NomeUpload,"\")
' if i<>0 then
' NomeFile = mid(NomeUpload,i + 1)
' else
' NomeFile = NomeUpload
' end if
' if i<>0 then
' Set FSO = CreateObject("Scripting.FileSystemObject")
' Upload3 = True
' DimensioneFile3 = len(ContenutoFile)
' EstensioneFile3 = right(ContenutoFile,3)
' NomeFile3 = NomeFile
' Set textStream = FSO.CreateTextFile(server.mappath(percorso & NomeFile3), True, False)
' textStream.Write ContenutoFile
' textStream.Close
' Set textStream = Nothing
' Set FSO = Nothing
' end if
'end if
next
' Da qui in poi è possibile fare esegiure allo script altre operazioni
' inserire qui gli script aggiuntivi che si vogliono eseguire dopo lo upload
' Per esempio visualizzare quello che è stato inserito allo interno del
' compo testo
'Response.Write "Il valore immesso nella testo1 è " & NomeFile1 & "
"
' Utilizzando il sistema descritto sopra è possibile visualizzare campi
' testo aggiuntivi presenti nel form
' Response.Write "Il valore immesso nella testo2 è " & testo2 & "
"
' Response.Write "Il valore immesso nella testo3 è " & testo3 & "
"
' E la stessa cosa per i campi dove è stato eseguito lo upload dei file
'If Upload1 = true then
' Response.Write "
La dimensione del file che hai uploadato è di " & DimensioneFile1*0.001 & "kb"
' Response.Write "
Grazie di aver inviato il tuo file"
'End If
'If Upload2 = true then
' Response.Write "
La dimensione del file che hai uploadato è di " & DimensioneFile2*0.001 & "kb"
' Response.Write "
Grazie di aver inviato il tuo file"
'End If
'If Upload3 = true then
' Response.Write "
La dimensione del file che hai uploadato è di " & DimensioneFile3*0.001 & "kb"
' Response.Write "
Grazie di aver inviato il tuo file"
'End If
End if
rs.addnew
rs(1) = settore
rs(2) = sponsor
rs(3) = pagato
' accertiamo il numero di numeri da assegnare
NN = pagato \ 50
z = 1
STR = ultimo + z
z = z + 1
for z = 2 to NN
STR = STR & " - " & ultimo + z
next
rs(4) = STR
rs(5) = NomeFile1
rs(6) = ultimo + z - 1
rs.update
' Chiusura del database
rs.Close
set rs = Nothing
conn.Close
set conn = Nothing
response.Redirect "sponsorregistrati09.asp"
%>
ecco l'intera pagina e il campo che non viene passato al database è "sponsor"