emissionMedlem sedan dec. 19996 721 inlägg Originalinlägg av crisse6. Råkade fimpa... :)
jag håller nu på med att skapa en väldigt enkel mailinglista... denna kod är på den sidan som jag hämtar alla mejladresser på... jag får detta felmess:
Provider error '80004005'
Odefinierat fel
/groda/mejlinglista.asp, line 17
med denna kod: (det funkade förrut, men inte nu???)
Kod:
<form name="brev" method="post" action="skicka_brev.asp">
<%
Set Databas = Server.CreateObject("ADODB.Connection")
Set rsMejl = Server.CreateObject("ADODB.Recordset")
MdbFilePath = Server.MapPath("brevet.mdb")
Databas.Open "Driver={Microsoft Access Driver (*.mdb)}; DBQ= " & MdbFilePath & ";"
SQL = "SELECT * From mejladresser"
rsMejl.Open SQL, Databas
If rsMejl.EOF then
Response.Write "<b>" & "Inga e-mail adresser finns." & "</b>"
else
Do Until rsMejl.EOF
Response.Write"<input type=""text"" name=""adress"" value='" &rsMejl("mejl") & "'>"
rsMejl.MoveNext
Loop
%>
<p><textarea name="meddelande" rows="6" cols="45"></textarea></p>
<p><input type="submit" name="skicka" value="Skicka månadsbrev"></p>
</form>
<% End If %>
sedan hur gör man själva skickar sidan, ska ha cdonts, men vet ej hur jag ska få in allt...
crisse6Medlem sedan dec. 20002 526 inlägg kan ngn svara på varför detta inte funkar, line 33 som är '## -- till vilken mail adress mailet ska skickas till --
<%
'## -- din rubrik till mailet --
strRubrik = Request.Form("rubrik")
'## -- din mailbody, dvs det som är mailets innehåll --
strMeddelande = Request.Form("meddelande")
Set Databas = Server.CreateObject("ADODB.Connection")
MdbFilePath="d:/wwwroot/cris/db/brevet.mdb"
Databas.Open "Driver={Microsoft Access Driver (*.mdb)}; DBQ= " & MdbFilePath & ";"
SQL = "SELECT * From mejladresser"
'## -- skapar ett CDO mail objekt --
set objCDO = server.createobject("CDONTS.NewMail")
'## -- skapar ett recordset innehållandes alla epost adresser --
Set rsMejl = Databas.Execute(SQL)
If rsMejl.EOF Then
Response.Write "Inga e-postadresser hittades."
Else
Do Until rsMejl.EOF
'## -- till vilken mail adress mailet ska skickas till --
strEpost = rsMejl("mejl")
objCDO.To = strEpost
'## -- din mailadress --
objCDO.From = "dinmail@dindomain.se"
'## -- här kommer subject/rubriken --
objCDO.Subject = strRubrik
'## -- meddelandet kommer här --
objCDO.Body = strMeddelande
objCDO.Send
rsMejl.MoveNext
Loop
Response.Write "Ditt mail har nu skickats till alla listmedlemmar."
End If
set objCDO = Nothing
%>
------------------
www.groda.net *kvack*, *kvack*
[Redigerat av crisse6 den 21 maj 2001]
[Redigerat av crisse6 den 21 maj 2001]
[Redigerat av crisse6 den 21 maj 2001]
crisse6Medlem sedan dec. 20002 526 inlägg nu har PatrikB ordnat om lite i koden, men det funkar ändå inte... den gillar inte Do Until rsMejl.EOF...
<%
'## -- din rubrik till mailet --
strRubrik = Request.Form("text")
'## -- din mailbody, dvs det som är mailets innehåll --
strMeddelande = Request.Form("meddelande")
'## -- din emailadress --
strFrom = "grodanmejl@hotmail.com"
Set Databas = Server.CreateObject("ADODB.Connection")
MdbFilePath="d:/wwwroot/cris/db/brevet.mdb"
Databas.Open "Driver={Microsoft Access Driver (*.mdb)}; DBQ= " & MdbFilePath & ";"
SQL = "SELECT * From mejladresser"
'## -- skapar ett CDO mail objekt --
set objCDO = server.createobject("CDONTS.NewMail")
'## -- skapar ett recordset innehållandes alla epost adresser --
Set rsMejl = Databas.Execute(SQL)
response.write rsMejl("mejl") & "<BR>"
If rsMejl.EOF Then
Response.Write "Inga e-postadresser hittades."
Else
Do Until rsMejl.EOF
strEpost = rsMejl("mejl")
objCDO.Send strFrom, strEpost , strRubrik, strMeddelande
rsMejl.MoveNext
Loop
Response.Write "Ditt mail har nu skickats till alla listmedlemmar."
End If
set objCDO = Nothing
%>
------------------
www.groda.net *kvack*, *kvack*
[Redigerat av crisse6 den 21 maj 2001]
EclipseMedlem sedan juli 20003 825 inlägg På sökvägen till databasen, använd server.mapPath & "\" i stället för att hårdkoda sökvägen som du gjort.
Det går något långsammare att använda server.mapPath men om du nu vill hårdkoda sökvägen, fråga då först vilken server som koden körs från;
IF Request.ServerVariables("SERVER_NAME") <> "192.168.1.44" THEN
-- ' ## min lokala dator
ELSE
-- ' ## webservern
END IF
hajjarru?
------------------
"Never underestimate your opponents." - Name the movie.
EclipseMedlem sedan juli 20003 825 inlägg Glömde...
* Du kan inte köra CDONTS lokalt, endast på webservern. (Jag tror du använder pws och ett webbhotell med cdonts.)
* Använd gärna server side includes för at öppna och stänga databasen.
<!-- #INCLUDE VIRTUAL="/open.asp" -->
<!-- #INCLUDE VIRTUAL="/close.asp" -->
då blir inte just den biten så jobbig.
------------------
"Never underestimate your opponents." - Name the movie.
crisse6Medlem sedan dec. 20002 526 inlägg Okaj Eclipse, jag ska ändra det, åter till problemet. Nu har jag fått det bekräftat att det funkar iaf :) men det är just loopen det är fel på, den skickar bara till översta adressen i db:n... :( Detta gör att det blir fel... på den raden som den bitt ligger på:
Do Until rsMejl.EOF
just nu ser hela koden ut såhär:
<%
'## -- din rubrik till mailet --
strRubrik = Request.Form("text")
'## -- din mailbody, dvs det som är mailets innehåll --
strMeddelande = Request.Form("meddelande")
'## -- din emailadress --
strFrom = "grodanmejl@hotmail.com"
Set Databas = Server.CreateObject("ADODB.Connection")
MdbFilePath="d:/wwwroot/crisse6/db/brevet.mdb"
Databas.Open "Driver={Microsoft Access Driver (*.mdb)}; DBQ= " & MdbFilePath & ";"
SQL = "SELECT * From mejladresser"
Set rsMejl = Databas.Execute(SQL)
'## -- skapar ett CDO mail objekt --
set objCDO = server.createobject("CDONTS.NewMail")
'## -- skapar ett recordset innehållandes alla epost adresser --
response.write rsMejl("mejl") & "<BR>"
If rsMejl.EOF Then
Response.Write "Inga e-postadresser hittades."
Else
Do Until rsMejl.EOF
strEpost = rsMejl("mejl")
objCDO.Send strFrom, strEpost , strRubrik, strMeddelande
rsMejl.MoveNext
Loop
Response.Write "Ditt mail har nu skickats till alla listmedlemmar."
End If
set objCDO = Nothing
%>
hjälp!!!!!!!!
------------------
www.groda.net *kvack*, *kvack*