Jo jag brukar använda mig av en sådan kod.
Problemet är att detta är en mailinglista och det
ska skickas ut till
adresser som läses från en databas.
Vanligtvis när jag använder sevrern med aspmail på
så använder jag denna koden:
Function SendEmail( sEmailServer, sFromEmail,
sToEmail, sSubject, sText )
Dim objMail
set objMail =
server.createobject("SMTPsvg.Mailer")
objMail.FromName = sFromEmail
objMail.FromAddress = sFromEmail
objMail.RemoteHost = sEmailServer
objMail.AddRecipient sToEmail, sToEmail
objMail.Subject = sSubject
objMail.BodyText = sText
if objMail.SendMail then
SendEmail = ""
else
' Message send failure
SendEmail = objMail.Response
end if
Set objMail = nothing
End Function
och när jag sen byter till den andra servern så
brukar jag byta till dennna kod rakt av:
Function SendEmail( sEmailServer, sFromEmail,
sToEmail, sSubject, sText )
Dim objMail
Set objMail = CreateObject("CDONTS.NewMail")
objMail.From = sFromEmail
objMail.To = sToEmail
objMail.Subject = sSubject
objMail.Body = sText
objMail.Send
Set objMail = nothing
End Function
men när jag gör det nu så blir det :
Microsoft VBScript compilation error '800a040e'
'loop' without 'do'
/maillista/run.asp, line 49
Loop
^
hela koden till run.asp ser ut så här
<html>
<head>
<title>Nu skickas breven ut....vänta....</title>
</head>
<body bgcolor="#FFFFFF"
background="../images/bakbla.gif" text="#000000">
<table border="0" width="600">
<tr>
<td width="114"></td>
<td width="478"><img
src="../../images/mailplatta.gif"
alt="mailplatta.gif (5653 bytes)"
WIDTH="352" HEIGHT="94"><p><font
face="Verdana"><small>.....mailet skickas till de
mottagare som finns i listan.</small><br>
<small>Sändningen kan ta en stund beroende på
hur många</small><br>
<small>som finns i listan</small></font></p>
<hr size="1" align="left" width="350">
<p> </td>
<td><br>
</td>
</tr>
</table>
<%
Listval=Request.Form("Listval")
Set Databas =
Server.CreateObject("ADODB.Connection")
Databas.Open ="DRIVER={Microsoft Access Driver
(*.mdb)}; DBQ=" &
Server.MapPath("../../asp/maillista.mdb")
SQLStmt = "SELECT Distinct Epost FROM Lista WHERE
" & Listval & " = 'True'"
Set Poster = Databas.Execute(SQLStmt)
%>
<table border="0" width="600">
<tr>
<td width="114"></td>
<td width="478"><font
face="Verdana"><small>Brevet skickat till följande
mottagare: <p><%
Function SendEmail( sEmailServer, sFromEmail,
sToEmail, sSubject, sText )
Dim objMail
Set objMail = CreateObject("CDONTS.NewMail")
objMail.From = sFromEmail
objMail.To = sToEmail
objMail.Subject = sSubject
objMail.Body = sText
objMail.Send
Set objMail = nothing
End Function
%><strong>
<%= Poster("Epost")%> <br>
<%
Poster.MoveNext
Loop
%> </strong></small></font></td>
</tr>
</table>
<%Databas.Close%>
</body>
</html>
Vanligtvis när jag ändrar på detta sätt så brukar
jag få ändra i den filen som jag matar in datan
som
sedan skcikas via cdontsfilen, i detta fallet
skulle det vara maila.asp
<html>
<head>
<meta name="GENERATOR" content="Microsoft
FrontPage 3.0">
<title>Skicka ett brev</title>
</head>
<body background="../../images/rodbakgrund.gif"
bgcolor="#FFFFFF">
<table border="0" width="600">
<tr>
<td width="122"></td>
<td width="470"><img
src="../../images/mailplatta.gif"
alt="mailplatta.gif (5644 bytes)" WIDTH="352"
HEIGHT="94"><p> </td>
</tr>
<tr>
<td width="122"></td>
<td width="470" bgcolor="#CAE4FF"><form
method="POST" action="run.asp">
<p><font face="Verdana"><small><%%>Välj den
lista du vill skicka till:</small><br>
</font><select name="listval" size="1">
<option value="Datorer">Datorer</option>
<option value="Mjukvara">Mjukvara</option>
<option
value="Tillbehor">Tillbehor</option>
<option value="Spel">Spel</option>
</select></p>
<p><font face="Verdana"><small>Skriv in en
rubrik på meddelandet:</small><br>
<input type="text" name="Rubrik"
size="30"></font></p>
<p><small><font face="Verdana">Skriv in
meddelandet:</font></small></p>
<p><textarea rows="10" name="meddelande"
cols="50"></textarea></p>
<p><font face="Verdana"><small>Välj namn på
avsändare:</small><br>
</font><input type="text" name="sender"
size="30" value="Intermedia Publishing AB"></p>
<p><font face="Verdana"><small>Välj
e-postadress på avsändare:</small><br>
</font><input type="text" name="epostsender"
size="30" value="martin3@home.se"></p>
<p><input type="submit" value="Skicka"
name="B1"><input type="reset" value="Rensa"
name="B2"></p>
</form>
</td>
</tr>
</table>
</body>
</html>
Men här hittar jag inget lämpligt ställe att lägga
in smtpserver på.
Scriptet är hämtat från http://www.idg.se/mikrodatorn/webbmastern/md9804/
Att tillägga är att jag har testat så att cdonts
funkar, så det är inte cdonts som krånglar det vet
jag.
Mvh Martin
------------------
Mvh Martin Persson
www.Costodia.com