Avatar billede cskaade Nybegynder
28. juli 2002 - 16:43 Der er 12 kommentarer og
1 løsning

ASPemail og AddAttachment

Nu har jeg længe sat og prøvet at finde ud af hvordan jeg kan få ASPemail til at sende en fil man vedhæfter i en formular, de andre data fra formularen bliver skreven til en database, men hvor får jeg den til at sende filen til e-mail, jeg har siddet og kikket på ASPupload men har ikke kunnet finde ud af det noget som kan hjælpe mig.

Set Upload = Server.CreateObject("Persits.Upload")
conn.execute("INSERT INTO smaop SET overskrift= '"& Upload.Form("titel") &"', beskriv= '"& Upload.Form("beskriv") &"', tilnavn= '"& Upload.Form("regnavn") &"', tilemail= '"& Upload.Form("regemail") &"', matri= '"& Upload.Form("matfor") &"', kat= '"& Upload.Form("kat") &"', sogord= '"& Upload.Form("sog") &"'")

Set Mail = Server.CreateObject("Persits.MailSender")
Mail.Host = "smtp.mail.dk"
Mail.From = "test@mail.dk"
Mail.FromName = "Test"
Mail.AddAddress "test@mail.dk", "Test"
Mail.AddAttachment Upload.Form("file1")
Mail.Subject = "Billede"
Mail.Body = "Her er et billde"

On Error Resume Next
Mail.Send
If Err <> 0 Then
Response.Write "<h2>Fejl</h2>"
Response.Write "Error encountered: " & Err.Description
else
Response.Write "<h2>Tak for det</h2>"
End If

Mvh.
cskaade
Avatar billede eagleeye Praktikant
28. juli 2002 - 18:53 #1
Jeg tror du er nød til at upload filen til serveren og så sende den med..
Avatar billede cskaade Nybegynder
28. juli 2002 - 19:02 #2
Ved du hvordan den kode ser ud for jeg prøvet dem men det vil ikke lykkes.
Avatar billede eagleeye Praktikant
28. juli 2002 - 19:26 #3
Set Upload = Server.CreateObject("Persits.Upload")
'Gemmer filen i c:\upload folderen, det skal så rette til en folde du har
'rettigheder til at gemme filer i.
Upload.Save "c:\upload"

conn.execute("INSERT INTO smaop SET overskrift= '"& Upload.Form("titel") &"', beskriv= '"& Upload.Form("beskriv") &"', tilnavn= '"& Upload.Form("regnavn") &"', tilemail= '"& Upload.Form("regemail") &"', matri= '"& Upload.Form("matfor") &"', kat= '"& Upload.Form("kat") &"', sogord= '"& Upload.Form("sog") &"'")

Set Mail = Server.CreateObject("Persits.MailSender")
Mail.Host = "smtp.mail.dk"
Mail.From = "test@mail.dk"
Mail.FromName = "Test"
Mail.AddAddress "test@mail.dk", "Test"

For Each File in Upload.Files
  Mail.AddAttachment File.Path

  'Måske skal det være sådan hvis filnavnet ikke er med i Path
  'Mail.AddAttachment File.Path & "\" & File.Name
Next
Mail.Subject = "Billede"
Mail.Body = "Her er et billde"

On Error Resume Next
Mail.Send
If Err <> 0 Then
  Response.Write "<h2>Fejl</h2>"
  Response.Write "Error encountered: " & Err.Description
else
  Response.Write "<h2>Tak for det</h2>"
End If
Avatar billede cskaade Nybegynder
28. juli 2002 - 19:47 #4
Lige et sidste spørgsmål ved du hvordan man får den til at slette filen på serveren igen når den er sendt.
Avatar billede eagleeye Praktikant
28. juli 2002 - 19:53 #5
du kan skrive:  File.Delete

Det skal nok være efter Mail.Send:

Mail.Send
File.Delete
Avatar billede cskaade Nybegynder
28. juli 2002 - 19:56 #6
Lige et mere jeg vil gøre så den kun sendt en mail når der var en fil jeg har prøvet med denne if sætning 'if not Upload.Form("file1") = "" then' men så sender den heller ikke en mail når der er en fil med.

Jeg indsat sætning lige over ’Set Mail = Server.CreateObject("Persits.MailSender")’
Avatar billede eagleeye Praktikant
28. juli 2002 - 20:03 #7
Jeg fat dette eks hos dem som har lavet ASPUpload og emal kompunent:


<!-- This example uses the Persits Software AspEmail component
to send SMTP email with an optional file attachment.-->

<HTML>
<BODY BGCOLOR="#FFFFFF">

<%
    ' Capture an uploaded file
    Set Upload = Server.CreateObject("Persits.Upload")
    Upload.IgnoreNoPost = True ' suppress "Nothing has been posted" error
    Count = Upload.Save("c:\upload")

    ' Send mail
    If Upload.Form("Send") <> "" Then
        Set Mail = Server.CreateObject("Persits.MailSender")
        Mail.Host = "mail.atlantech.net" ' replace that with your own host
        Mail.From = Upload.Form("From")
        Mail.AddAddress Upload.Form("To")
        Mail.Subject = Upload.Form("Subject")
        Mail.Body = Upload.Form("Body")

        If Count > 0 Then Mail.AddAttachment Upload.Files(1).Path
       
        On Error Resume Next
        Mail.Send
        If Err <> 0 Then
            Response.Write "Error occurred when trying to send mail: <B>" & Err.Description & "</B>"
        Else
            Response.Write "Success! Message was sent."
        End If
    End If
%>

<h2>Sending Mail with an Attachment using AspEmail</h2>

    <FORM METHOD="POST" ENCTYPE="multipart/form-data" ACTION="SendMailWithAttachment.asp">
    <TABLE>
        <TR><TD>Mail From (enter address): </TD><TD><INPUT TYPE="TEXT" NAME="From"></TD></TR>
        <TR><TD>Mail To (enter address): </TD><TD><INPUT TYPE="TEXT" NAME="To"></TD></TR>
        <TR><TD>Subject: </TD><TD><INPUT TYPE="TEXT" NAME="Subject"></TD></TR>
        <TR><TD>Body: </TD><TD><TEXTAREA NAME="Body"></TEXTAREA></TD></TR>
        <TR><TD>Attachment:</TD><TD><INPUT TYPE=FILE NAME="ATTACHMENT"></TD></TR>
        <TR><TD COLSPAN=2><INPUT TYPE=SUBMIT VALUE="Send Mail"></TD></TR>
    </TABLE>
    <INPUT TYPE=HIDDEN NAME="Send" VALUE="Send">
    </FORM>

</BODY>
</HTML>
Avatar billede eagleeye Praktikant
28. juli 2002 - 20:05 #8
Du kan ændre:

Upload.Save("c:\upload")

Til:
Count = Upload.Save("c:\upload")

og så tjekke på om Count > 0 i if'en:

if Count > 0 then
Avatar billede cskaade Nybegynder
28. juli 2002 - 20:11 #9
Når jeg har gjort det kommer denne fejl når jeg vedhæfter en fil, så det er en fejl under afsendelsen af mailen.

Error encountered: Object required
Avatar billede eagleeye Praktikant
28. juli 2002 - 20:14 #10
Prøv at ændre File.Delete til:

Upload.Files(1).Delete
Avatar billede cskaade Nybegynder
28. juli 2002 - 20:17 #11
Så takker jeg mange gang nu virker det som det skal
Avatar billede cskaade Nybegynder
28. juli 2002 - 20:18 #12
vil du ikke lige komme med et svar så jeg kan godkende
Avatar billede eagleeye Praktikant
28. juli 2002 - 20:22 #13
Ja det vil da :)
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