20. august 2008 - 11:13
Der er
12 kommentarer og 1 løsning
vedhæft flere filer i jmail med aspupload
Er her nogen der kan hjælpe mig med at få denne til at sende flere vedhæftede filer? <% if Request.ServerVariables("REQUEST_METHOD") = "POST" then Set Upload = Server.CreateObject("Persits.Upload.1") Upload.SetMaxSize 8000000, True On Error Resume Next Count = Upload.Save If Err.Number = 8 Then fejl = "Filen er for stor." Else if Err <> 0 then Fejl = "Der opstod en fejl : " & Err.Description end if Count = Upload.Save ("D:\vhosts\xxx.dk\httpdocs\log\intranet\") if Count>0 then set file1=Upload.Files("file1") end if navn = Upload.form("navn") email = Upload.form("email") Set JMail = Server.CreateObject("JMail.SMTPMail") 'REt DOMÆNE til dit domæne navn: JMail.ServerAddress = "mail.xxx.dk" JMail.Sender = "xxx@xxx.dk" JMail.Subject = "emnet" JMail.AddRecipient "xxx@xxx.dk" JMail.Body = "En mail fra : " & navn & " og brugeren har denne email adresse : " & email if Count>0 then JMail.AddAttachment (file1.path) end if JMail.Execute Set JMail = Nothing if count>0 then Upload.DeleteFile (file1.path) end if Set file1=nothing set upload=nothing Response.Write "Mail sendt." end if %> <html> <head></head> <body> <form action="<%=Request.ServerVariables("SCRIPT_NAME")%>" method="POST" ENCTYPE="multipart/form-data"> <br>Navn: <input type="text" name="navn" size="20"> <br>Fra (email): <input type="text" name="email" size="20"> <br>Fil1: <input type="file" name="file1" size="20"> <br><input type="submit" name="send" value="send"> </form> </body> </html>
Annonceindlæg fra QNAP
20. august 2008 - 11:27
#1
Du kører bare: JMail.AddAttachment (file1.path) for hver uploadede fil.
20. august 2008 - 11:44
#2
Så kommer den med fejl: Object required: 'file2'
20. august 2008 - 11:46
#3
Ja, du skal også rette her: if Count>0 then set file1=Upload.Files("file1") end if Det skal vel så være: if Count>0 then set file1=Upload.Files("file1") set file2=Upload.Files("file2") end if Så skal du selvfølgelig sørge for, at uploadfeltet hedder "file2". Og den skal også slettes fra serveren igen, så ret: if count>0 then Upload.DeleteFile (file1.path) end if Set file1=nothing til: if count>0 then Upload.DeleteFile (file1.path) Upload.DeleteFile (file2.path) end if Set file1=nothing Set file2=nothing
20. august 2008 - 11:53
#4
Hmmm... ja selvfølgelig ... havde skrevet: if Count>0 then set file1=Upload.Files("file1") set file1=Upload.Files("file2") end if ;-)
20. august 2008 - 11:55
#5
Hvis jeg nu skal sende til en gruppe fra databasen hvor skal jeg så sætte mit loop ind henne? do while... loop
20. august 2008 - 12:02
#6
Det er rundt om denne linje: JMail.AddRecipient "xxx@xxx.dk" Så du får: Do While Not rs.EOF JMail.AddRecipient rs("email") rs.MoveNext Loop Hvis du altså lægger e-mail-adresserne i recordsettet kaldet "rs".
20. august 2008 - 12:04
#7
:)
20. august 2008 - 13:00
#8
Endnu en gang redder du mig ;-) Tusind tak!
20. august 2008 - 13:25
#9
Jeg får dog denne fejl når jeg eksempelvis kun sender 1 fil: Object required: 'file2' I den linie hvor den vil slette.....
20. august 2008 - 13:48
#10
Har klaret den :-)
20. august 2008 - 13:57
#11
Øhh.. det har jeg ikke alligevel - det ser ud til at det er der hvor vi attacher filerne det går galt..hvis der kun er en så mangler den fil 2 osv.
20. august 2008 - 14:11
#12
Så må du smide en if-sætning rundt om de steder, hvor file2 optræder. F.eks.: if Count>0 then set file1=Upload.Files("file1") if Upload.Files("file2") then set file1=Upload.Files("file2") end if end if og: if count>0 then Upload.DeleteFile (file1.path) if Upload.Files("file2") then Upload.DeleteFile (file2.path) end if end if Set file1=nothing if Upload.Files("file2") then Set file2=nothing end if
20. august 2008 - 14:19
#13
Takker :-)
Kurser inden for grundlæggende programmering