Avatar billede zamiel Nybegynder
11. oktober 2007 - 10:54 Der er 1 løsning

problem med mail attachment og dimac jmail

Jeg har arvet noget kode som ser ud til at have problemer med at sende mails med attachments. Der er ingen problemer med at sende mails uden attachments men hvis der vedhæftes noget bliver mailen ikke sendt. Er der nogen der kan komme med et bud på hvorfor det er sådan? har en ide om det måske også kunne være mail serveren der laver rod i det.

Koden ser ud som følgende

Dim msg
    msg = "Mail sendt!"
Dim tempLocation ' the folder that will store your temporary files.
    tempLocation = "admin/plain/uploadtemp"
Dim filename 'Temp filename
Dim fs ' file object
Dim FileNameTitle
Dim ContentType

Dim mySmartUpload
Dim file
Set mySmartUpload = Server.CreateObject("aspSmartUpload.SmartUpload")
mySmartUpload.Upload

Dim jmail,id
id="hej"
Set jmail = Server.CreateOBject( "JMail.Message" )
jmail.From = "no-reply@....dk"
jmail.Subject = mySmartUpload.Form("mailsubject")
jmail.Body = mySmartUpload.Form("mailbody")

For each file In mySmartUpload.Files
    If not file.IsMissing Then
        File.SaveAs("/" & tempLocation & "/" & File.FileName)
        jmail.AddAttachment(Server.MapPath("/" & tempLocation) & "\" & File.FileName)                 
        FileNameTitle = File.FileName
    End If
Next

If not Err.Number = 0 then         
    Response.Redirect("/admin/index.asp?msg=Fejl i vedhæftet filer.<br>Filen er for stor, eller typen er ulovlig.<br> Mailen blev ikke sendt!")
End if 


Dim lsSQL
If mySmartUpload.Form("group") = "all" Then
    lsSQL = "SELECT Email FROM users "
End If
If mySmartUpload.Form("group") = "nmsgmembers" Then
    lsSQL = "SELECT Email FROM users WHERE NmsgMember = 1"
End If
Set mySmartUpload = nothing


Set fs = Server.CreateObject("Scripting.FileSystemObject")
If fs.FileExists(Server.MapPath(tempLocation) & "\" & FileNameTitle) then
   
    fs.DeleteFile(Server.MapPath(tempLocation) & "\" & FileNameTitle)
    If fs.FileExists(Server.MapPath(tempLocation) & "\" & FileNameTitle) then
        msg = "kunne ikke slette temp fil"
    End if   
End if
Set fs = nothing


Dim loRs
Set loRs = Server.CreateObject("ADODB.Recordset")
Set loRs = loConn.Execute(lsSQL)

loRs.MoveFirst
Do While Not loRs.EOF
    jmail.AddRecipient(loRs.Fields("Email").Value)
    loRs.MoveNext
Loop

jmail.Send ("mail.domain.dk")
Avatar billede zamiel Nybegynder
11. oktober 2007 - 14:26 #1
fejlen fundet, det var mail serveren der lavede rod i den :)
Avatar billede Ny bruger Nybegynder

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.

Loading billede Opret Preview
Kategori
Kurser inden for grundlæggende programmering

Log ind eller opret profil

Hov!

For at kunne deltage på Computerworld Eksperten skal du være logget ind.

Det er heldigvis nemt at oprette en bruger: Det tager to minutter og du kan vælge at bruge enten e-mail, Facebook eller Google som login.

Du kan også logge ind via nedenstående tjenester