Avatar billede bodyguard Nybegynder
04. september 2004 - 21:21 Der er 23 kommentarer og
1 løsning

Afsendelse af mailform med vedhæftning, virker ikke!

Hejsa.

Jeg bruger denne kode:

<%@ Language=VBScript %>
<%
Dim Firma, Navn, Adresse, Bynavn, Postnummer, Email, Telefonnummer, Fax, Bemaerkninger, BodyText, Billedfil, Antal, Minfont, fso

Firma        = Request("firma")
Navn          = Request("navn2")
Adresse      = Request("adresse")
Postnummer    = Request("postnummer")
Bynavn        = Request("bynavn")
Email        = Request("email")
Telefonnummer = Request("telefonnummer2")
Bemaerkninger = Request("Bemaerkninger")

' her hentes billede - det gemmes i mappen log.
  Billedfil=""
  Antal=0
  Set Upload = Server.CreateObject("Persits.Upload.1")
  Upload.SaveVirtual("/log/")
  For Each File in Upload.Files
    Antal = Antal + 1
    Billedfil = Server.Mappath("/log/" & File.Name)
  Next 

' her sendes mail
  Minfont = "<font face=verdana size=1>"
  Set Mailer = Server.CreateObject("SMTPsvg.Mailer")
  Mailer.ContentType = "text/html"
  Mailer.FromName  = "Party-House.dk - Kontakt form"
  Mailer.FromAddress= "  Robot@Party-House.dk" 
  Mailer.RemoteHost = "mail.party-house.dk"
  Mailer.AddRecipient "Mark Zweidorff", "  mark@party-house.dk" 
  Mailer.Subject    = "Party-House.dk - Kontakt form"
  BodyText = Minfont & "<b>Nedenstående ønsker at blive kontaktet:</b><br><br>"
  BodyText = BodyText & "<table border=0 cellspacing=0 cellpadding=0 width=300>"
  BodyText = BodyText & "<tr><td width=150>" & Minfont & "<b>Firma</b></td><td>&nbsp;</td><td width=150>&nbsp;&nbsp;" & Minfont & Firma & "</td></tr>"
  BodyText = BodyText & "<tr><td>" & Minfont & "<b>Navn</b></td><td>&nbsp;</td><td>&nbsp;&nbsp;" & Minfont & Navn & "</td></tr>"
  BodyText = BodyText & "<tr><td>" & Minfont & "<b>Adresse</b></td><td>&nbsp;</td><td>&nbsp;&nbsp;" & Minfont & Adresse & "</td></tr>"
  BodyText = BodyText & "<tr><td>" & Minfont & "<b>Postnr/By</b></td><td>&nbsp;</td><td>&nbsp;&nbsp;" & Minfont &  Postnummer & " " & Bynavn & "</td></tr>"
  BodyText = BodyText & "<tr><td>" & Minfont & "<b>Email</b></td><td>&nbsp;</td><td>&nbsp;&nbsp;" & Minfont & Email & "</td></tr>"
  BodyText = BodyText & "<tr><td>" & Minfont & "<b>Telefon</b></td><td>&nbsp;</td><td>&nbsp;&nbsp;" & Minfont & Telefonnummer & "</td></tr>"
  BodyText = BodyText & "</table>"
  BodyText = BodyText & Minfont & "<b>Bemærkning: </b><br>" & Bemaerkninger
  BodyText = BodyText & "<br><br>Mvh.<br> Party-House.dk's mailing system."
  Mailer.BodyText = BodyText
' billed tilføjes mail 
  if Antal > 0 then
    Mailer.AddAttachment Billedfil
  end if
  if Mailer.SendMail then
    Response.Redirect "kontakt.asp?msg=Deres meddelse er nu afsendt."
  else
    Response.Write "Mail kan ikke sendes, fejlen er:<br>" & Mailer.Response
  end if

' her slettes billede efter brug
  if Antal > 0 then
    Set fso = Server.CreateObject("Scripting.FileSystemObject")
    fso.DeleteFile(Billedfil)
    Set fso = Nothing
  end if
%>



Og jeg får denne fejl:

Active Server Pages error 'ASP 0113'

Script timed out

/web/vip_ansog_send.asp

The maximum amount of time for a script to execute was exceeded. You can change this limit by specifying a new value for the property Server.ScriptTimeout or by changing the value in the IIS administration tools.


Hvordan løser jeg dette ?
Avatar billede eagleeye Praktikant
05. september 2004 - 11:16 #1
er det nogle store filer eller?

Du kan prøve at sætte script time-outet op. Dette kan sættes ind i anden linje i filen:
<% Server.ScriptTimeout = 3600 %>



Men normalt kan man ikke bruge request.form når man uploader så skal man bruge upload komponentes form collection. Så dette:

Firma        = Request("firma")
Navn          = Request("navn2")
Adresse      = Request("adresse")
Postnummer    = Request("postnummer")
Bynavn        = Request("bynavn")
Email        = Request("email")
Telefonnummer = Request("telefonnummer2")
Bemaerkninger = Request("Bemaerkninger")

' her hentes billede - det gemmes i mappen log.
  Billedfil=""
  Antal=0
  Set Upload = Server.CreateObject("Persits.Upload.1")
  Upload.SaveVirtual("/log/")
  For Each File in Upload.Files
    Antal = Antal + 1
    Billedfil = Server.Mappath("/log/" & File.Name)
  Next 


Bliver til:


' her hentes billede - det gemmes i mappen log.
  Billedfil=""
  Antal=0
  Set Upload = Server.CreateObject("Persits.Upload.1")
  Upload.SaveVirtual("/log/")
  For Each File in Upload.Files
    Antal = Antal + 1
    Billedfil = Server.Mappath("/log/" & File.Name)
  Next 
Firma        = Upload.Form("firma")
Navn          = Upload.Form("navn2")
Adresse      = Upload.Form("adresse")
Postnummer    = Upload.Form("postnummer")
Bynavn        = Upload.Form("bynavn")
Email        = Upload.Form("email")
Telefonnummer = Upload.Form("telefonnummer2")
Bemaerkninger = Upload.Form("Bemaerkninger")
Avatar billede bodyguard Nybegynder
05. september 2004 - 16:06 #2
Jeg har nu leget med det kode og fået det til at se sådan her ud:

<%@ Language=VBScript %>
<% Server.ScriptTimeout = 3600 %>
<%
Dim Firma, Navn, Adresse, Bynavn, Postnummer, Email, Telefonnummer, Fax, Bemaerkninger, BodyText, Billedfil, Antal, Minfont, fso

' her hentes billede - det gemmes i mappen log.
  Billedfil=""
  Antal=0
  Set Upload = Server.CreateObject("Persits.Upload.1")
  Upload.SaveVirtual("/web/vip/log/")
  For Each File in Upload.Files
    Antal = Antal + 1
    Billedfil = Server.Mappath("/vip/log/" & File.Name)
  Next 

Firma        = Upload.Form("firma")
Navn          = Upload.Form("navn2")
Adresse      = Upload.Form("adresse")
Postnummer    = Upload.Form("postnummer")
Bynavn        = Upload.Form("bynavn")
Email        = Upload.Form("email")
Telefonnummer = Upload.Form("telefonnummer2")
Bemaerkninger = Upload.Form("Bemaerkninger")

' her sendes mail
  Minfont = "<font face=verdana size=1>"
  Set Mailer = Server.CreateObject("SMTPsvg.Mailer")
  Mailer.ContentType = "text/html"
  Mailer.FromName  = "Party-House.dk - VIP ansøgning"
  Mailer.FromAddress= "Robot@Party-House.dk"
  Mailer.RemoteHost = "mail.party-house.dk"
  Mailer.AddRecipient "VIP", "vip@party-house.dk"
  Mailer.Subject    = "Party-House.dk - VIP ansøgning"
  BodyText = Minfont & "<b>Nedenstående ønsker at blive kontaktet:</b><br><br>"
  BodyText = BodyText & "<table border=0 cellspacing=0 cellpadding=0 width=300>"
  BodyText = BodyText & "<tr><td width=150>" & Minfont & "<b>Firma</b></td><td>&nbsp;</td><td width=150>&nbsp;&nbsp;" & Minfont & Firma & "</td></tr>"
  BodyText = BodyText & "<tr><td>" & Minfont & "<b>Navn</b></td><td>&nbsp;</td><td>&nbsp;&nbsp;" & Minfont & Navn & "</td></tr>"
  BodyText = BodyText & "<tr><td>" & Minfont & "<b>Adresse</b></td><td>&nbsp;</td><td>&nbsp;&nbsp;" & Minfont & Adresse & "</td></tr>"
  BodyText = BodyText & "<tr><td>" & Minfont & "<b>Postnr/By</b></td><td>&nbsp;</td><td>&nbsp;&nbsp;" & Minfont &  Postnummer & " " & Bynavn & "</td></tr>"
  BodyText = BodyText & "<tr><td>" & Minfont & "<b>Email</b></td><td>&nbsp;</td><td>&nbsp;&nbsp;" & Minfont & Email & "</td></tr>"
  BodyText = BodyText & "<tr><td>" & Minfont & "<b>Telefon</b></td><td>&nbsp;</td><td>&nbsp;&nbsp;" & Minfont & Telefonnummer & "</td></tr>"
  BodyText = BodyText & "</table>"
  BodyText = BodyText & Minfont & "<b>Bemærkning: </b><br>" & Bemaerkninger
  BodyText = BodyText & "<br><br>Mvh.<br> Party-House.dk's mailing system."
  Mailer.BodyText = BodyText
' billed tilføjes mail 
  if Antal > 0 then
    Mailer.AddAttachment Billedfil
  end if
  if Mailer.SendMail then
    Response.Redirect "kontakt.asp?msg=Deres meddelse er nu afsendt."
  else
    Response.Write "Mail kan ikke sendes, fejlen er:<br>" & Mailer.Response
  end if

' her slettes billede efter brug
  if Antal > 0 then
    Set fso = Server.CreateObject("Scripting.FileSystemObject")
    fso.DeleteFile(Billedfil)
    Set fso = Nothing
  end if

%>

Der kommer ingen fejl, dog bliver filen ikke vedhæftet og så er mail teksten fuldstændigt forskruet, det virker som om at html ikke bliver aktiveret...
Avatar billede eagleeye Praktikant
05. september 2004 - 16:10 #3
Har du en ENCTYPE="multipart/form-data" i form tagen?

<form method="post" action=".." ENCTYPE="multipart/form-data">
Avatar billede bodyguard Nybegynder
05. september 2004 - 16:11 #4
ja
Avatar billede bodyguard Nybegynder
05. september 2004 - 16:12 #5
<form enctype="multipart/form-data" action="vip_ansog_send.asp" method="post" name="form">
Avatar billede eagleeye Praktikant
05. september 2004 - 16:51 #6
Ok, det forstår jeg ikke helt så at mailen ser forkert ud.
Du kan prøve at tilføje CharSet = 2 for ISO-8859-1 :

Mailer.CharSet = 2
Avatar billede bodyguard Nybegynder
05. september 2004 - 16:52 #7
oki, men det vigtigste er stadigt vedhæftning...
Avatar billede eagleeye Praktikant
05. september 2004 - 16:53 #8
Du kan også prøve at havde <html> tagen med:

BodyText = "<html><head></head><body>" & Minfont & "<b>Nedenstående ønsker at blive kontaktet:</b><br><br>"


og slutte af med </html>

BodyText = BodyText & "<br><br>Mvh.<br> Party-House.dk's mailing system.</body></html>"
Avatar billede eagleeye Praktikant
05. september 2004 - 16:53 #9
Bliver filen gemt kan du se det?
Avatar billede bodyguard Nybegynder
05. september 2004 - 16:57 #10
hmmm næ, filen bliver ikke uploaded :(
Avatar billede eagleeye Praktikant
05. september 2004 - 17:01 #11
og du får ikke en fejl?.
Har du en linje med:  On error resume next ?
Avatar billede bodyguard Nybegynder
05. september 2004 - 17:04 #12
jov, du kan hente hele scriptet her:

http://www.Party-House.dk/exp/kontakt.zip
Avatar billede eagleeye Praktikant
05. september 2004 - 17:04 #13
Prøv at fjerne eller udkommenter den linje så:
'On Error Resume next
Avatar billede eagleeye Praktikant
05. september 2004 - 17:06 #14
Har du en folder som hedder web i root folderen ?
Avatar billede eagleeye Praktikant
05. september 2004 - 17:08 #15
Hvis web er root folderen skal SaveVirtual være:

Upload.SaveVirtual("/vip/log/")
Avatar billede bodyguard Nybegynder
05. september 2004 - 17:08 #16
ja
Avatar billede eagleeye Praktikant
05. september 2004 - 17:10 #17
Ok, så prøv at rette denne hvor Billedefil laves til at havde sammes sti:

    Billedfil = Server.Mappath("/vip/log/" & File.Name)

Sådan her:

    Billedfil = Server.Mappath("/web/vip/log/" & File.FileName)
Avatar billede bodyguard Nybegynder
05. september 2004 - 17:11 #18
nej root her under:
Web ->
her ligger alle filerne
Avatar billede bodyguard Nybegynder
05. september 2004 - 17:14 #19
nice nu virker det :D

der mangler bare lige den html fix, mit brev ser sådan her ud:

<font face=verdana size=1><b>Nedenstående ønsker at blive kontaktet:</b><br><br><table border=0 cellspacing=0 cellpadding=0 width=300><tr><td width=150><font face=verdana size=1><b>Firma</b></td><td>&nbsp;</td><td width=150>&nbsp;&nbsp;<font face=verdana size=1>ijoqrhowa</td></tr><tr><td><font face=verdana size=1><b>Navn</b></td><td>&nbsp;</td><td>&nbsp;&nbsp;<font face=verdana size=1>hjæhæhæ</td></tr><tr><td><font face=verdana size=1><b>Adresse</b></td><td>&nbsp;</td><td>&nbsp;&nbsp;<font face=verdana size=1>hælhæljahdlæh</td></tr><tr><td><font face=verdana size=1><b>Postnr/By</b></td><td>&nbsp;</td><td>&nbsp;&nbsp;<font face=verdana size=1>læhæ hælh</td></tr><tr><td><font face=verdana size=1><b>Email</b></td><td>&nbsp;</td><td>&nbsp;&nbsp;<font face=verdana size=1>ælh</td></tr><tr><td><font face=verdana size=1><b>Telefon</b></td><td>&nbsp;</td><td>&nbsp;&nbsp;<font face=verdana size=1>ælh</td></tr></table><font face=verdana size=1><b>Bemærkning: </b><br>ælasgøæjøæsjf

sagkajægejæsea
sa
g
ase

gasajgpjsa<br><br>Mvh.<br> Party-House.dk's mailing system.
Avatar billede eagleeye Praktikant
05. september 2004 - 17:24 #20
Har du prøvet de to forslag: 05/09-2004 16:51:42  og  09-2004 16:53:18  ?

Du har sat contentType til "text/html". Så der mail programmet tilbage? Er det sat til kun at motage det som plain text?
Avatar billede bodyguard Nybegynder
05. september 2004 - 17:27 #21
har prøvet begge...

og mail programmet kan modtage det hele... jeg kigger lige på noget
Avatar billede eagleeye Praktikant
05. september 2004 - 17:32 #22
Ok, jeg er umiddelbart tom for ideer :)
nå du kan også få et svar :)

Alle de steder jeg kan finde står der man skal sætt .ContentType = "text/html" for at sende HTML mails.
Avatar billede bodyguard Nybegynder
06. september 2004 - 00:25 #23
Jeg har fået det til at virke men når der er en vedhæftning så bliver indholdet til text og ikke html...

DU kan kan hente min opdateret version her:

http://www.Party-House.dk/exp/kontakt2.zip
Avatar billede eagleeye Praktikant
10. september 2004 - 18:14 #24
Jeg har prøvet et kigge på det. og det er åbenbart en bug eller feature alt efter hvem man spørger. Hvis man kigger i documentationen for ASPmail:
http://www.serverobjects.com/comp/Aspmail4.htm  (scroll ned til ContentType)

Der står at ContentType ignoreres når man tilføjer filer i ASPmail:

Note: The ContentType property is ignored if you have file attachments.
Example:  Mailer.ContentType = "text/html"

Der er umiddelbart ikke en løsning med ASPmail som får HTML mails og vedhæftede filer.
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