Avatar billede musti776 Nybegynder
22. april 2006 - 14:09 Der er 12 kommentarer og
1 løsning

Problemer med Nyhedsmail - JMail

Hey gutter,
jeg har lidt problemer med nyhedsmailen hvor jeg bruger JMail..
Når jeg sender mail melder den intet fejl, men mailen bliver bare ikke sendt, der kommer intet frem..

<form action="mail_admin.asp?gorev=send" method="POST">
Overskrift:<input type="text" name="overskrift"><br>Besked:<br><textarea name="besked" rows="10"></textarea>
<input type="submit" value="Send">
</form>

IF gorev = "send" THEN
sayi2 = 0
overskrift= Request.Form("overskrift")
besked= Request.Form("besked")
besked= Replace(besked, vbCrLf,  "<br>" & vbCrLf,1,-1,1)
besked= "<font face=Verdana size=2>"&besked&"</font>"
Set RS = BAG.Execute("SELECT * FROM newsletter where confirm='yes'")
Do While Not Rs.eof
email = RS("email")
sayi2=sayi2+1

Set JMail = Server.CreateObject("JMail.SMTPMail")
JMail.Logging = True
JMail.Silent = True
JMail.ServerAddress = "smtp.xxxxx.dk"
JMail.Sender = "info@xxxxx.dk"
JMail.AddRecipient email
JMail.Subject = overskrift
JMail.ContentType = "text/html"
JMail.Body = besked
JMail.Priority = 1
JMail.Execute
set JMail = Nothing

Har i nogle ideer?
Avatar billede eagleeye Praktikant
22. april 2006 - 14:12 #1
Prøv at rette:

IF gorev = "send" THEN

Til denen så den henter gorev fra querystringen:

IF Request.Querystring("gorev") = "send" THEN
Avatar billede musti776 Nybegynder
22. april 2006 - 14:16 #2
det hjalp ikke eagleeye
Avatar billede eagleeye Praktikant
22. april 2006 - 14:20 #3
Hvilket web hotel bruger du?

Har du andre if sætninger som evt. gør den ikke kommer til at sende mailen?

Hvilken type kolonne er confirm?
Avatar billede eagleeye Praktikant
22. april 2006 - 14:33 #4
Når du har:  JMail.Silent = True
Vel den heller ikke melde fejl selvom der er fejl når den forsøger at sende mailen så måske du kan prøve at udskifte:

JMail.Execute


Til dette så den udskriver hvad fejlen er hvis der sker fejl i .Execute :

If Not JMail.Execute Then
  Response.Write "ERROR MESSAGE: " & JMail.ErrorMessage & "<br/>" & vbCrLf
  Response.Write "ERROR SOURCE: " & JMail.ErrorSource & "<br/>" & vbCrLf
  Response.Write "LOG: <pre>" & JMail.Log & "</pre>" & vbCrLf
End if
Avatar billede musti776 Nybegynder
22. april 2006 - 14:41 #5
jeg har webdomain..
jeg bruger text til confirm kolonnen..
de if sætninger som jeg har før "send" er disse:
IF gorev = "tilfoj" THEN
confirm = Trim(Request.Form("confirm"))
email = Trim(Request.Form("email"))
IF email = "" THEN
hata = "Tilføj mail adresse"
Response.End
END IF
Set RS = Server.Createobject("ADODB.Recordset")
RS.open "SELECT * FROM newsletter",BAG,1,3
IF NOT RS.eof THEN
Do While Not RS.eof
IF RS("email") = email THEN
hata = "mailen eksistere allerede."
Response.End
END IF
RS.Movenext
Loop
END IF
RS.AddNew
RS("confirm") = confirm
RS("email") = email
RS.update
Set RS = Nothing
Response.Redirect "mail_admin.asp"
END IF

IF gorev = "update" THEN
NewsID = Trim(Request.Form("NewsID"))
confirm = Trim(Request.Form("confirm"))
email = Trim(Request.Form("email"))
Set RS2 = Server.Createobject("ADODB.Recordset")
RS2.open "SELECT * FROM newsletter WHERE NewsID="&NewsID&"", BAG,1,3
RS2("confirm") = confirm
RS2("email") = email
RS2.update
RS2.Close
Set RS2 = Nothing
Response.Redirect "mail_admin.asp"
END IF

IF gorev = "slet" THEN
NewsID = Request.Querystring("NewsID")
Set RS = BAG.execute("DELETE FROM newsletter WHERE NewsID="&NewsID&"")
Set RS = Nothing
Response.Redirect "mail_admin.asp"
END IF
Avatar billede musti776 Nybegynder
22. april 2006 - 14:42 #6
har ændret JMail.Execute med det som du har skrevet..
nu kommer den med denne fejl:
The message was undeliverable. All servers failed to receive the message mail_admin.asp, line 186 (det er denne -> If Not JMail.Execute Then)
Avatar billede eagleeye Praktikant
22. april 2006 - 14:47 #7
Er afsender adressen korrekt?
Avatar billede musti776 Nybegynder
22. april 2006 - 14:49 #8
jeps, det er det..
Avatar billede musti776 Nybegynder
22. april 2006 - 14:50 #9
hvorfor tror du det melder fejl når jeg udskifter JMail.Execute med
If Not JMail.Execute Then
  Response.Write "ERROR MESSAGE: " & JMail.ErrorMessage & "<br/>" & vbCrLf
  Response.Write "ERROR SOURCE: " & JMail.ErrorSource & "<br/>" & vbCrLf
  Response.Write "LOG: <pre>" & JMail.Log & "</pre>" & vbCrLf
End if

??
Avatar billede eagleeye Praktikant
22. april 2006 - 14:59 #10
umiddelbart skulle det give samme fejl om man bruger den ene eller ander anden linie..

Hvad med server navnet er det rigtigt:  JMail.ServerAddress = "smtp.xxxxx.dk" ?

Hvor har du web domæne?

Du kan evt. prøve også at sætte SenderName på nogle web hoteller vil ikke sende mailen hvis der ikke er et navn:

JMail.Sender = "info@xxxxx.dk"
JMail.SenderName = "etnavn"
Avatar billede musti776 Nybegynder
22. april 2006 - 15:11 #11
jeg har webhotel hos Webdomain..
Jeg er desværre ikke 100% sikker på server navnet da der ikke står noget på deres hjemmeside.. Jeg kunne i hvertfald ikke finde noget.. Men jeg har prøvet med smtp.domæne.dk, mail.domæne.dk... det virker bare ikke..

har nu også prøvet at tilføje sendername men det virkede heller ikke.. :(
Avatar billede eagleeye Praktikant
22. april 2006 - 15:20 #12
Har du ikke modtaget en mail fra dem, men brugernavn og password til forskellige ting. Der skulle i den mail gerne stå hvilken server du skal bruge for at sende mails via din hjemmeside.

Typisk er det noget i stil med: "smtp.domæne.dk"

Men hvis ud ikke har fået det navn må du skrive til deres support og høre hvilken server du skal bruge.
Avatar billede musti776 Nybegynder
22. april 2006 - 15:32 #13
ja, tror nok jeg bliver nødt til at skrive til deres support..
tak for hjælpen mester..
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