28. november 2003 - 14:58Der er
12 kommentarer og 1 løsning
Upload af fil, Uploader.Files
Hej ekspertx
'write action to user 'not included due to the possibility off one user presing update, thereby registring twice ' Loop through the uploaded files For Each File In Uploader.Files.Items ' Output the file details to the browser Response.Write "File Uploaded: " & File.FileName & "<br>" Response.Write "Size: " & File.FileSize & " bytes<br>" Response.Write "Type: " & File.ContentType & "<br><br>" Next
Har ovenstående kode som jeg skal bruge til at håndtere noget filhåndtering.
Problemet er at der er 2 upload felter, og de skal kunne indsættes i hvert sit felt i databasen. Derfor vil jeg gerne kunne skilne mellem felterne - har prøvet med RS("FileNameExpert1")=File1.FileName File1.SaveToDatabase RS("FileExpert1") RS("FileNameExpert2")=File2.FileName File2.SaveToDatabase RS("FileExpert2")
men her er der noget galt. Hvordan pinpointer jeg at jeg gerne vil bruge File1 eller File2 i Uploader.Files?
håber nogle har et hurtigt svar, da jeg har en deadline og nogle kunder der river hovedet af mig hvis det ikke kører snart!!!!
Det må jo være noget ala: <% For Each File In Uploader.Files.Items i = 1 ' Output the file details to the browser Response.Write "File Uploaded: " & File.FileName & "<br>" Response.Write "Size: " & File.FileSize & " bytes<br>" Response.Write "Type: " & File.ContentType & "<br><br>"
' Din db code her ... rs.addnew RS("FileNameExpert" & i ) = File.FileName rs.update File.SaveToDatabase RS("FileExpert" & i) i = i + 1 Next %>
Den starter med at kører den igennem første gang, så kigger den i første file, og skriver til felterne: FileNameExpert1 samt FileExpert1. Derefter er det FileExpert2,FileNameExpert2 - Derefter er det FileExpert3,FileNameExpert3 -
Ok men hvad hvis der ikke er noget i FILE1, så bliver 'i' jo kun 1 og indsætter i FILE1, altså hvis der tilgengæld er en fil i FILE2, eller har jeg misforstået det?
Tak for svar - håber du har et hurtigt liggende inde igen:) vh rebel_penguin
Så må det jo være noget ala: <% For Each File In Uploader.Files.Items i = 1 ' Din db code her ... If not File.FileName = "" Then rs.addnew RS("FileNameExpert" & i ) = File.FileName rs.update File.SaveToDatabase RS("FileExpert" & i) ' Output the file details to the browser Response.Write "File Uploaded: " & File.FileName & "<br>" Response.Write "Size: " & File.FileSize & " bytes<br>" Response.Write "Type: " & File.ContentType & "<br><br>" End if i = i + 1 Next %>
FILE1 eksisterer slet ikke i Uploader.Files hvis den ikke indeholder en fil, hvilket skaber problemer da jeg så ikke ved om det er felt 1 eller 2 filen kommer fra.
Løsningen er nok at kunne pinpointe formen, altså ikke for each File in Uploader.Files men istedet kunne deklarere noget a'la Uploader.Files.FILE1 - har dog prøvet en del med det men ingen løsning endnu.
Har du ellers andre forslag, hører jeg meget gerne fra dig.
Takker meget for din hjælp - desværre virker det stadig ikke ( det bliver en lang nat). Jeg smider koden her for at se om det kan hjælpe, jeg får fejlmedellelsen OBJECT required.
RS.AddNew ' create a new record RS("Title")=Uploader.Form("Title") RS("FirstName")=Uploader.Form("FirstName") RS("LastName")=Uploader.Form("LastName") RS("City")=Uploader.Form("City") RS("PostalCode")=Uploader.Form("PostalCode") RS("Country")=Uploader.Form("Country") RS("Address")=Uploader.Form("Address") RS("Email")=Uploader.Form("Email") RS("Phone")=Uploader.Form("Phone") RS("Mobile")=Uploader.Form("Mobile") RS("Nationality")=Uploader.Form("Nationality") RS("Reference")=Uploader.Form("Reference") RS("Birthdate")=Uploader.Form("Birthdate") RS("Password")=Uploader.Form("Password") RS("CV_english")=Uploader.Form("CV_english") RS("CV_polish")=Uploader.Form("CV_polish") RS("Price")=Uploader.Form("Price")
if Err <> 0 then Response.write "Fejl: " & Err.Description objConn.RollbackTrans 'Denne linies kode laver en "RollBack" på alle transaktioner udført på vores ADO Connection Response.End 'Response.Redirect (sHome & "error_page?message=" & chr(34) & "expert" & chr(34) & ".asp") end if
jeg bruger Pure ASP File Upload, hentet fra http://www.asp101.com/articles/jacob/scriptupload.asp, det er altså uden komponent:(. Systemet skal nemlig køre på en polsk server (hehe - utroligt nok) og det har været lidt svært at få oplyst hvad de har liggende af komponenter.
Har endelig fået det til at virke med anden løsning:)
Smid et svar jake og vi deler i porten ( er 50 point ok ), for det slid du har lavet? Tak for hjælpen - ikke noget være end at sidde og kæmpe alene med sådan noget.
Ja, det var ADO5 metoden, som du kan se på den site så bruger de et eks: <% Response.Write "File Name:" & MyUploader.Files("file1").FileName Response.Write "File Size:" & MyUploader.Files("file1").FileSize Response.Write "File Type:" & MyUploader.Files("file1").ContentType %>
Derfor troede jeg man kunne gøre det samme :-) Men fuck det..
Synes godt om
Ny brugerNybegynder
Din løsning...
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.