11. april 2005 - 10:35Der er
36 kommentarer og 1 løsning
kopiere fil og gemme filnavn
Jeg har denne formular og vil gerne have den til at gemme filnavnet på den vedhæftede fil i tabellen filer(url) samtidigt med at filen kopieres over i en mappe der hedder filer.
<form name="myForm" method="post" action="<%= scriptname %>?mode=save"> <select name="idnr" style="width:343px"> <% set rs = conn.execute("select * from fejl order by id") do while not rs.eof response.write "<option value='"& rs("id") &"'>"& rs("id") rs.MoveNext loop %> </select> </p>
men dvs det er dit script som gemmer filen ...eller? for som du har det der kan du vist ikke se filnavnet Og dog Du får jo fra "vedhaeft" en adresse som "c:\mappe\mappe\filnavn.endelse" Så kan du jo hive den sidste del af ved et Split?
ja det var det... ok..det vil sige at den ikke gemmer filen nu? For så skal du jo have fat i en komponent af en slags. Evt AspSmartUpload hvis din udbyder understøtter denne
har prøvet denne men er i tvivl om hvordan jeg skal sætte den op i den første formular. er gemt som upload2.asp <HTML> <BODY BGCOLOR="white">
<H1>aspSmartUpload : Sample 1</H1> <HR>
<% ' Variables ' ********* Dim mySmartUpload Dim intCount
' Object creation ' *************** Set mySmartUpload = Server.CreateObject("aspSmartUpload.SmartUpload")
' Upload ' ****** mySmartUpload.Upload
' Save the files with their original names in a virtual path of the web server ' **************************************************************************** intCount = mySmartUpload.Save("/aspSmartUpload/Upload") ' sample with a physical path ' intCount = mySmartUpload.Save("c:\temp\")
' Display the number of files uploaded ' ************************************ Response.Write(intCount & " file(s) uploaded.") %> </BODY> </HTML>
Har gemt eksempel 2 som upload2.asp, men kan ikke få den til at uploade. kan du ikke lige se om jeg har gjort det rigtigt i min formular. <% Set Conn = Server.CreateObject("ADODB.Connection") Conn.Open "Provider=Microsoft.Jet.OLEDB.4.0;Data Source=" & Server.Mappath("/database/db1.mdb") mode = Request.QueryString("mode") scriptname = Request.ServerVariables("SCRIPT_NAME")
<form name="myForm" method="post" action="<%= scriptname %>?mode=save"> <select name="idnr" style="width:343px"> <% set rs = conn.execute("select * from fejl order by id") do while not rs.eof response.write "<option value='"& rs("id") &"'>"& rs("id") rs.MoveNext loop %> </select> </p>
Den her form: --- <FORM METHOD="submit" ACTION="/upload2.asp" ENCTYPE="multipart/form-data"> <INPUT TYPE="SUBMIT" VALUE="Upload"> </form> --- Skal indeholde dit fil felt --- <FORM METHOD="submit" ACTION="/upload2.asp" ENCTYPE="multipart/form-data"> <input type="file" name="vedhaeft" onFocus="clearForm(this)" value="Vedhæft fil"> <INPUT TYPE="SUBMIT" VALUE="Upload"> </form> --- Jeg er ikke helt med på hvad din onFocus gør? Men fil feltet skal være i den form for ellers ved upload2.asp jo ikke hvilke filer der er valgt :o) Hvis du gør det så burde den uploade filen I din upload2.asp kan du evt samtidig lave din database forbindelse
behøver vel ingen databaseforbindelse når den bare skal uploade en fil?? Det virker stadig ikke. det er som om den slet ikke kommer i kontakt med upload2.asp
<form name="myForm" method="post" action="<%= scriptname %>?mode=save"> <select name="idnr" style="width:343px"> <% set rs = conn.execute("select * from fejl order by id") do while not rs.eof response.write "<option value='"& rs("id") &"'>"& rs("id") rs.MoveNext loop %> </select> </p>
det går nok ikke at have de to forms inden i hinanden..mon ikke det er det som giver problemer? Hvad er scriptname? Kan du evt gøre følgende og så i upload2.asp til sidst redirect til scriptname? ---- <FORM name="myForm" METHOD="submit" ACTION="upload2.asp" ENCTYPE="multipart/form-data"> <select name="idnr" style="width:343px"> <% set rs = conn.execute("select * from fejl order by id") do while not rs.eof response.write "<option value='"& rs("id") &"'>"& rs("id") rs.MoveNext loop %> </select> </p> <input type="file" name="vedhaeft" onFocus="clearForm(this)" value="Vedhæft fil"> <INPUT TYPE="SUBMIT" VALUE="Upload"> </form>
Ok nu kom den da hen på upload men nu melder den fejl på linie 21 <HTML> <BODY BGCOLOR="white">
<H1>aspSmartUpload : Sample 2</H1> <HR>
<% ' Variables ' ********* Dim mySmartUpload Dim file Dim intCount intCount=0
' Object creation ' *************** Set mySmartUpload = Server.CreateObject("aspSmartUpload.SmartUpload")
' Upload ' ****** mySmartUpload.Upload
' 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("/aspSmartUpload/Upload/" & file.FileName) ' sample with a physical path file.SaveAs("c:\1\" & 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>") %> </BODY> </HTML>
giver den en fejlkode? For så prøv se inde på deres hjemmeside hvad koden betyder Det kunne måske tyde på det ikke var sat rigtig op når den ikke kommer længere?
om scriptname betyder noget Det ved jeg jo ikke...ved ikke hvad det skulle gøre ;o) Men hvis alt du skal er at uploade en fil! Så kan du nøjes med den html og asp side som findes på linket for aspsmartupload Måske du skulle tage den derfra? Og så senere når upload virker så tilføje flere ting?
jeg bliver desværre nød til at smutte lidt for idag..men jeg håber du kan finde ud af det eller evt en anden kan hjælpe dig videre Subscript out of range den er ikke beskrevet på deres hjemmeside :/
Ok prøver at forklare. Jeg har fået lavet en side der oploade en fil samt gemte filnavnet. Det jeg manglede var at den hentede en id fra en anden tabel og lagde den sammen med filnavnet.
felt 1 idnummer: opslag i tabel(fejl.id) Knap 2 vedhæft fil : siger sig selv knap 3 upload: -||-
når man trykker på upload sender den en kopi af filen over i mappen: filer, gemmer filnavnet i tabellen filer under feltet url samt idnummer i tabellen fejl under idnummer.
Hvis kommer tilbage er her hvad jeg har indtil nu : upload.asp <% Set Conn = Server.CreateObject("ADODB.Connection") Conn.Open "Provider=Microsoft.Jet.OLEDB.4.0;Data Source=" & Server.Mappath("/database/db1.mdb") mode = Request.QueryString("mode") scriptname = Request.ServerVariables("SCRIPT_NAME") %> <HTML> <BODY BGCOLOR="white">
<form name="myForm" method="post" action="/upload2.asp" ENCTYPE="multipart/form-data"> <select name="vareNR" style="width:343px"> <% set rs = conn.execute("select * from fejl order by id") do while not rs.eof response.write "<option value='"& rs("id") &"'>"& rs("id") rs.MoveNext loop %> </select> </p>
kan være du lige kan løse et lille problem for mig. Det er nederst på siden, Jeg ville gerne have at der kommer et link til alle de billeder der har samme idnummer som fejl der bliver skrevet ud. Lyder lidt kringlet..prøver lige at opsummere. Idnummer på billede samt id på fejl er det samme. nederst skrives linken ud hvis den har samme idnr som fejlens id. <% Set Conn = Server.CreateObject("ADODB.Connection") DSN = "DRIVER={Microsoft Access Driver (*.mdb)}; " DSN = DSN & "DBQ=" & Server.MapPath("database/db1.mdb") Conn.Open DSN strSQL = "Select * from fejl where fuldfort = 'Nej'" Set rs = Conn.Execute(strSQL) %>
Nej du behøver ikke. jeg prøver at oprette et nyt spørgsmål.
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.