EclipseMedlem sedan juli 20003 825 inlägg Jag har en sida med produkter i verktyget...
edit.asp?ID=23&row=44&menuID=3
Om jag nu ska ladda upp ett produktblad (pdf t.ex.) då blir det så dumt när man inte kan använda request-uttryck till sammans med ASP Upload.
Hur ska jag komma runt denna situation?
***
Givetvis kan man använda sessions... Men jag är lite skeptisk till att göra det i tid och otid. Men å andra sidan... finns det ingen annan utväg så kanske man får göra det...??
erkaMedlem sedan dec. 19996 522 inlägg Du kan ju använda request.form men då måste du använda save to memory, du kommer åt de objekten först när du har laddat upp själva filen så att säga.
@ndersMedlem sedan juni 200032 969 inlägg Upload-komponenten har antagligen en egen metod istället som du ska använda, det brukar vara uploadobjektet.Form("blah") istället.
Mvh
EclipseMedlem sedan juli 20003 825 inlägg Så här gör man:
edit.asp:
\<FORM METHOD="POST" ENCTYPE="multipart/form-data" ACTION=**"insert.asp?dbaction=insert&ID=\<%=request("ID")%\>&row=
<%=request("row")%>&menuID=<%=request("menuID")%>**" CLASS="text_8pt">
Select file: <BR>
<INPUT TYPE="FILE" SIZE="20" NAME="FILE" CLASS="text_8pt">
<SPAN CLASS="text_8pt"></SPAN><BR>
<INPUT TYPE=SUBMIT VALUE="Upload!" CLASS="text_8pt" NAME="SUBMIT">
</FORM>
Sen kan man använda requestfunktionen som vanligt i filen
insert.asp. @nders, din variant fick jag aldrig att fungera.
Den fungerar säkert... men det är mina kunskaper som
haltar på området! :-)
@ndersMedlem sedan juni 200032 969 inlägg Ja, request kan du använda då, men du kommer inte kunna använda Request.Form tillsammans med komponenten. Jag lovar (nästan) att den har en egen metod som ersätter Request.Form. :)
Mvh
erkaMedlem sedan dec. 19996 522 inlägg Ja det har den, men du kan inte komma åt dem förän du har sparat ner filen till minnet, sen använder du save as.
Server.Scripttimeout = 10000
Dim mySmartUpload,strFileName, kk, File
Set mySmartUpload = Server.CreateObject("aspSmartUpload.SmartUpload")
'Ladda upp filen till serverns minne för att sedan använda saveas metoden
mySmartUpload.Upload
IntNewsId = Trim(mySmartUpload.Form("IntNewsId"))
strHeader = Trim(mySmartUpload.Form("strHeader"))
'Öppna DB
Call DBopen
kk = 0
For each file In mySmartUpload.Files
kk = kk + 1
If File.FileName > "" Then
File.Saveas "d:\UploadedFiles\NewsEvents\AttachedFiles\"& IntNewsId &"_"& file.filename
strFileName = IntNewsId &"_"& file.filename
strSQL = "INSERT INTO NewsAttachments (Fk_NewsId,FileName) VALUES ("& IntNewsId &",'"& strFileName &"')"
Cn.Execute(strSQL)
End If
Next
'Stäng DB
Call DBclose
@ndersMedlem sedan juni 200032 969 inlägg erka, nu pratade vi inte om ASPSmartUpload, utan ASP Upload. Dock är jag nästan 100 på att även den komponenten har motsvarande, även om tillvägagångssättet är något annorlunda.
Mvh
erkaMedlem sedan dec. 19996 522 inlägg Givetvis postar jag fel kod :) he he, kör faktiskt båda. Det fungerar exakt på samma sätt i Asp Upload som i ASPSmartUpload.