Jeg har lavet et upload script med 5 filer og 5 textfelter, jeg kan fint få smart upload til at uploade filerne, jeg har samtidig behov for at få lagt filnavne og tilhørende textfelt ind i SQL Db, jeg kan bare ikke helt få det til at virke.
Jeg bruger sample02.asp som skabelon.
----SAMPLE02.ASP-----------------
<% ' Variables ' ********* Dim mySmartUpload Dim file Dim intCount intCount=0
' Object creation ' *************** Set mySmartUpload = Server.CreateObject("aspSmartUpload.SmartUpload")
' Upload ' ****** mySmartUpload.Upload 'yesas = mySmartUpload.form("test") ' Select each file ' **************** For each file In mySmartUpload.Files ' Only if the file exist ' ********************** If not file.IsMissing Then ' Save the files with his original names in a virtual path of the web server ' ************************************************************************** file.SaveAs("upload/" & file.FileName)
' Display the number of files which could be uploaded ' *************************************************** Response.Write("<BR>" & mySmartUpload.Files.Count & " files could be uploaded.<BR>")
' Display the number of files uploaded ' ************************************ Response.Write(intCount & " file(s) uploaded.<BR>") %> ------- Klip ----------
Fil felterne i formen hedder file1 - file5 og text felterne hedder details1 - details5
Hvis du skal have noget ind for hver fil der bliver uploadet skal du have en query ind i din for løkke:
For each file In mySmartUpload.Files ' Only if the file exist ' ********************** If not file.IsMissing Then ' Save the files with his original names in a virtual path of the web server ' ************************************************************************** file.SaveAs("upload/" & file.FileName)
' Display the properties of the current file ' ****************************************** 'Response.Write("Name = " & file.Name & "<BR>") 'Response.Write("Size = " & file.Size & "<BR>") 'Response.Write("FileName = " & file.FileName & "<BR>") 'Response.Write("FileExt = " & file.FileExt & "<BR>") 'Response.Write("FilePathName = " & file.FilePathName & "<BR>") 'Response.Write("ContentType = " & file.ContentType & "<BR>") 'Response.Write("ContentDisp = " & file.ContentDisp & "<BR>") 'Response.Write("TypeMIME = " & file.TypeMIME & "<BR>") 'Response.Write("SubTypeMIME = " & file.SubTypeMIME & "<BR>") intCount = intCount + 1 ' Læg data i db..: myConn.Execute("INSERT INTO tabelnavn (feltnavn1,feltnavn2,feltnavn3) VALUES('Værdi1','Værdi2','Værdi3')"); End If Next
Mht. tekstværdierne er det lidt tricky at få ind. Du kan ikke bruge formen da den er multipart/form-data. Du kan måske lave noget javascript på siden som der bliver postet fra som skriver de data i GET (adresselinien) og så kan du få data'erne denvej..
Jeg regnede med at du selv kunne tilpasse query'en.. Lige nu er der bare sat til at indsætte "Værdix" ligemeget hvad. Men som jeg sagde er det lige tricky at få text-værdierne ind da du ikke kan få dem ind SAMTIDIG med at du uploader..
Tilladte BB-code-tags: [b]fed[/b] [i]kursiv[/i] [u]understreget[/u] Web- og emailadresser omdannes automatisk til links. Der sættes "nofollow" på alle links.