e questa è la pagina update_foto.asp per l'inserimento delle foto nella cartella public e per l'inserimento del record nel db access:
dim w_ID, w_Prodotto, w_PFoto, w_GFoto
dim w_Categorie
dim percorso, ByteRicevuti, FileBinario, DatiRicevuti, FirmaFile, ArrPezzi, item, Inizio
dim Intestazione, ContenutoFile, NomeUpload, NomeFile, Upload1, DimensioneFile1, EstensioneFile1, textStream, i, j
dim FSO, NomeFile1, Upload2, DimensioneFile2, EstensioneFile2, NomeFile2, maxdimp, maxdimg
'Questa variabile setta il percorso di dove effettuare l'upolad
'la cartella non puo non esistere lo script non la crea ! ! !
percorso = "/public/"
maxdimp=40000000000000 ' dimensione massima immagine piccola
maxdimg=380000000000000 ' dimensione massima immagine grande
ByteRicevuti = Request.TotalBytes
if ByteRicevuti > 0 then
DatiRicevuti = Request.BinaryRead(ByteRicevuti)
FileBinario = RSBinaryToString(DatiRicevuti)
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,"ID") > 0 then
w_ID = ContenutoFile
end if
if instr(Intestazione,"Prodotto") > 0 then
w_Prodotto = ContenutoFile
end if
if instr(Intestazione,"PFoto") > 0 then
w_PFoto = ContenutoFile
end if
if instr(Intestazione,"Categorie") > 0 then
w_Categorie = ContenutoFile
end if
' Qui recupero il file da uploadare (se presente) e lo scrivo
' sul server
if instr(Intestazione,"UPlFotop") > 0 then
i = instr(Intestazione,"filename=")
j = instr(i + 10,Intestazione,chr(34))
NomeUpload = mid(Intestazione,i + 10,j-i-10)
i = instrRev(NomeUpload,"\")
NomeFile="" ' max
if i<>0 then
NomeFile = mid(NomeUpload,i + 1)
else
NomeFile = NomeUpload
end if
' if i<>0 then
if NomeFile<>"" then
Set FSO = CreateObject("Scripting.FileSystemObject")
Upload1 = True
DimensioneFile1 = len(ContenutoFile)
if len(w_PFoto)=0 then
NomeFile1 = NomeFile
w_PFoto = NomeFile
else
NomeFile1 = w_PFoto
end if
if DimensioneFile1 > maxdimp then
Errore = Errore & "Dimensione immagine piccola ("&DimensioneFile1*0.0001 & " kb) maggiore del limite consentito ("&maxdimp*0.0001 & " kb)<br>"
else
EstensioneFile1 = LCase(right(NomeFile,4))
if EstensioneFile1 <>".jpg" and EstensioneFile1 <>".gif" then
Errore = Errore & "Tipo di file non corretto : "&EstensioneFile1&"<br>"
else
Set textStream = FSO.CreateTextFile(server.mappath(percorso & NomeFile1), True, False)
textStream.Write ContenutoFile
textStream.Close
Set textStream = Nothing
end if
end if
Set FSO = Nothing
end if
end if
if instr(Intestazione,"UPlFotog") > 0 then
i = instr(Intestazione,"filename=")
j = instr(i + 10,Intestazione,chr(34))
NomeUpload = mid(Intestazione,i + 10,j-i-10)
i = instrRev(NomeUpload,"\")
NomeFile="" ' max
if i<>0 then
NomeFile = mid(NomeUpload,i + 1)
else
NomeFile = NomeUpload
end if
' if i<>0 then
if NomeFile<>"" then
Set FSO = CreateObject("Scripting.FileSystemObject")
Upload2 = True
DimensioneFile2 = len(ContenutoFile)
if len(w_GFoto)=0 then
NomeFile2 = NomeFile
w_GFoto = NomeFile
else
NomeFile2 = w_GFoto
end if
if DimensioneFile2 > maxdimg then
Errore = Errore & "Dimensione immagine grande ("&DimensioneFile2*0.001 & " kb) maggiore del limite consentito ("&maxdimg*0.001 & " kb)<br>"
else
EstensioneFile2 = LCase(right(NomeFile,4))
if EstensioneFile2 <>".jpg" and EstensioneFile2 <>".gif" then
Errore = Errore & "Tipo di file non corretto : "&EstensioneFile2&"<br>"
else
Set textStream = FSO.CreateTextFile(server.mappath(percorso & NomeFile2), True, False)
textStream.Write ContenutoFile
textStream.Close
Set textStream = Nothing
end if
end if
Set FSO = Nothing
end if
end if
next
End if
Dim QSID, Errore, Tipologia, SQL, RS, Prodotto, PFoto, SCategoria, Categoria, Categorie
QSID = w_ID
Prodotto = Replace(w_Prodotto, "'", "''")
if w_PFoto<>"" then
PFoto = "public/"&Replace(w_PFoto, "'", "''")
else
Gfoto=""
end if
Categorie = w_Categorie
SCategoria = Mid(Categorie,1,InStr(Categorie, "-")-1)
Categoria = Mid(Categorie,InStr(Categorie, "-")+1)
If Errore = "" Then
If QSID <> "" Then
SQL = "UPDATE spettacoli Set SCategoria = " & SCategoria & ", Prodotto = '" & Prodotto & "', PFoto = '" & PFoto & "'WHERE ID = " & QSID
Else
SQL = "INSERT INTO spettacoli (SCategoria, Prodotto, PFoto) VALUES (" & SCategoria & ", '" & Prodotto & "', '" & PFoto & "')"
End If
Set RS = Conn.Execute(SQL)
Set RS = Nothing
Conn.close
Set Conn = Nothing
If Errore = "" And Err = 0 Then
Response.Redirect "spettacoli.asp"
Else
Errore = "Errore: <br>" & Err.Description
'response.write("<br>sql:"&sql)
Response.Redirect "errore.asp?errore=" & Errore
End If
Else
Response.Redirect "errore.asp?errore=" & Errore
End If
la pagina update_foto.asp è impostata per l'inserimento di un record, di una foto! Per inserire più record con il form in alto, come posso modificare il codice in update_foto.asp?