23. maj 2003 - 19:55
												Der er
									5 kommentarer													og
					1 løsning									
									
		 
		
			
JMail, nyhedsbrev
			Hej
Jeg har en database med en bunke mailadresser databasen ligger db/database.mdb
jeg har JMail og vil gerne når jeg har en form som jeg udfylder, hvordan laver jeg nemmest således at når jeg trykker submit så bliver maillen sendt ud... 
jeg har en der hedder nyhedsbrev.asp
som når den er udfyldt indenholder Emne og Teksten mailen det skal være således at når jeg sender den bliver den sendt til nyhedsendt.asp, men hvad skal denne indenholde???
Jeg har følgende i nyhedsendt.asp
<%
Emne = Request.Form("emne")
note = Request.Form("note")
body = "" & note & "" ' jeg vil gerne når jeg skriver en www adresse den automatisk bliver et hyperlink...
Set JMail = Server.CreateObject("JMail.SMTPMail")
JMail.ServerAddress = "smtp.mail.dk"
JMail.Sender = "admin@the-e-league.dk"
JMail.Subject = (request.Form("emne"))
JMail.SenderName = "The E League"
' her er mit problem se *
JMail.ContentType = "text/html"
JMail.body = body
JMail.Priority = 3
JMail.Execute
%>
*jeg vil gerne at jeg trækker alle mailadresserne fra min database hvordan gør jeg det??? min database er som sagt en Accesdatabase med følgene tabel: person og hvor emailen ligge som en post som hedder: email
nogen der vil poste den rigtige nyhedsender.asp for mig med alt hvad den skal indenholde???
					
		
	 
		
		
			set rs = server.createObject("ADODB.Connection")
str = "DRIVER={Microsoft Access Driver (*.mdb)};DBQ=" & Server.MapPath("db/database.mdb")
sql = "Select * from person)
rs.open str
set rs = rs.execute(sql)
While not rs.eof
    Set JMail = Server.CreateObject("JMail.SMTPMail") 
    JMail.ServerAddress = "smtp.mail.dk"
    JMail.Sender = "mailto:admin@the-e-league.dk"
    JMail.Subject = request.form("emne")
    JMail.AddRecipient arrEmails(n)
    JMail.Body = request.form("note")
    JMail.Priority = 3
    
    JMail.Execute
response.write "Sendt...!<br>"
wend
Hvad med på denne måde...
Det med hyperlinket kan jeg ikke hjælpe dig med nu, er vidst for træt...
		
		
	 
	
		
		
			Her er en jeg selv bruger:
<%
Subject = REPLACE(REQUEST.FORM("Subject"),"'","''")
Message = REPLACE(REQUEST.FORM("Message"),"'","''")
'// DSN Less Connection
Set Conn = Server.CreateObject("ADODB.Connection")
dbPath = "DBQ=" & Server.MapPath("db1.mdb")
Conn.Open "DRIVER={Microsoft Access Driver (*.mdb)}; " & dbPath
Set Rs = Server.CreateObject("ADODB.Recordset")
sql="SELECT TblNewsLists.ListName, TblNewsLists.ListEmail, TblNewsLists.NewsText, TblNewsListSignUp.ListID, TblNewsListSignUp.SignUpCompany, TblNewsListSignUp.SignUpName, TblNewsListSignUp.SignUpEmail, TblNewsListSignUp.SignUpNews, TblNewsListSignUp.Dato FROM TblNewsLists INNER JOIN TblNewsListSignUp ON TblNewsLists.ListID = TblNewsListSignUp.ListID WHERE TblNewsListSignUp.ListID="&Request.form("goto")
Rs.open sql, Conn, 1, 3
TotalRecs = Rs.recordcount
'// First we will create a message object that will serve as a
'// template for the merge.
'// The merge fields are marked with %% in the front and in the
'// end.
'// Note how we use merge fields even in the addRecipient method
set msgTemplate = Server.CreateObject( "JMail.Message" )
msgTemplate.From = "navn@mail.dk"
msgTemplate.FromName = "Nyhedsbrev fra ...."
msgTemplate.AddRecipient "<<"&"%%SignUpEmail%%"&">>", "%%SignUpName%%"
msgTemplate.Subject = subject
msgTemplate.ContentType = "text/html"
'// Replace Carrige retur and Linefeed
Dim QUOTE, LT, GT
QUOTE = chr(34)
LT = chr(60)
GT = chr(62)
Dim strng
    If INSTR(Request.Form("Message"),CHR(13)&CHR(10)) Then
        strng = Replace(Request.Form("Message"),CHR(13)&CHR(10),"<BR>")
        strng = Replace(strng,chr(34),"'")
    ELSE
        strng = Request.Form("Message")
    End If
msgTemplate.Body = "<html><head><TITLE>Nyhedsbrev fra ....!</TITLE><BODY BGCOLOR=#FFFFFF>"
msgTemplate.Body = msgTemplate.Body &"<b>Til: " &"%%SignUpName%%" &" " &"%%SignUpCompany%%" &"</b><P>"
msgTemplate.Body = msgTemplate.Body &"<h3>" &"%%ListName%%"   &"</h3><P>"
msgTemplate.Body = msgTemplate.Body & strng &"<P>"&"<P>"
msgTemplate.Body = msgTemplate.Body & "<HR noshade size=1>Ønsker du ikke længere at modtage disse nyheder, så gå..."
'// There, our message template is done. Next we create the mailmerge object.
set mMerge = Server.CreateObject( "JMail.MailMerge" )
'// Now, tell mailMerge to use the template we created earlier
mMerge.MailTemplate = msgTemplate
'// Okay lets do the merge. As we do an ADO resultset merge, we do not need to
'// specify each merge variable.
'// The RS is assumed to hold a ADO recordset.
rs.MoveFirst
do while Not rs.eof
    mMerge.Item( "SignUpCompany" ) = rs("SignUpCompany")&" "
    mMerge.Item( "SignUpName" ) = rs("SignUpName")&" "
    mMerge.Item( "SignUpEmail" ) = rs("SignUpEmail")
    mMerge.Item( "ListID" ) = rs("ListID")
    '// When the merge variables are finished, we replace all mergeFields
    '// in our template with the merge variables, using the expand() method.
    '// expand() returns a Message object.
    set msg = mMerge.Expand
    '// As usual we turn on logging and silent mode to handle possible errors.
    msg.Logging = true
    msg.silent = true
    if not msg.Send ( "smtp.mailserver.dk" ) then
      Response.write msg.log
    end if
rs.MoveNext
loop
%>