Indsæt brugeres e-mail fra databasen udfor "objCDO.To"
Hejsa -jeg har et problem, jeg ikke kan forstå kommer?? Jeg har brugt rigtig lang tid på det nu (og mit problem er sikkert dumt og let....)
Jeg har et besked-system på min hjemmeside for de brugere der er oprettet i min database. Men systemet skal også sende en mail til modtageren af beskeden's email-adresse - hvor adressen er hentet fra databasen, hvilket jeg ikke kan få det til.
Jeg forstår ikke, hvorfor den kommer med error:
"Type mismatch - line 79"
Linie 79 er:
objCDO.To = rsUser("email")
Er der nogen, der kan hjælpe mig??
Jeg lægger 90 points. (sig til, om der skal mere til).
Venlig hilsen,
ronni.
Min fil ser sådan ud...
<%
Option Explicit
Dim sql, rsMessage, rsUser, username, sentfrom, sendto, subject, message, notfilled(2), badflag, count, topic, recordnum, objCDO
username = Session("username")
if username = "" then
Response.Redirect("nologin.asp?page=messagecompose.asp")
end if
%>
<html>
<head>
<title>Send Besked</title>
<link rel="stylesheet" type="text/css" href="main.css">
<div align="center">
</head>
<body>
<font face="arial,helvetica" size=2>
<%
'Assign form values to variables
sentfrom = Session("username")
sendto = Request.Form("sendto")
subject = Request.Form("subject")
message = Request.Form("message")
topic = Request.Form("topic")
recordnum = Request.Form("recordnum")
'Tjek, om alle felter er fyldt i. Badflags afgør om der er et problem
badflag = 0
if sendto = "" then
notfilled(0) = "Til"
badflag = 1
end if
if subject = "" then
notfilled(1) = "Emne"
badflag = 1
end if
if message = "" then
notfilled(2) = "Besked"
badflag = 1
end if
if badflag = 1 then
senderror()
end if
'Åben forbindelsen og indsæt beskeden til brugeren
%>
<!--#include file="conn.asp"-->
<%
'Vælg den bruger, som besked sendes til og hent BRUGERNAVN og EMAIL herfra
sql = "SELECT username, email FROM Users WHERE username = '" & sendto & "'"
Set rsUser = Server.CreateObject("ADODB.Recordset")
rsUser.Open sql, conn, 3, 3
if rsUser.EOF then
nouser()
end if
rsUser.close
set rsUser = nothing
Set rsMessage = Server.CreateObject("ADODB.Recordset")
rsMessage.open "Messages", conn, 3, 3
rsMessage.AddNew
rsMessage("sentfrom") = sentfrom
rsMessage("sendto") = sendto
rsMessage("subject") = subject
rsMessage("message") = message
rsMessage.Update
rsMessage.close
set rsMessage = nothing
'send en email til modtagerens e-mail
Set objCDO = Server.CreateObject("CDONTS.NewMail")
objCDO.From = "DKLnet.dk <dont-reply@DKLnet.dk>"
objCDO.To = rsUser("email")
objCDO.Subject = "Du har modtaget en besked på DKLnet.dk!"
objCDO.Body = "En bruger har anbefalet følgende link:"
objCDO.Send
Set objCDO = Nothing
%>
<p><b>Din besked til <i><%=sendto%></i> er blevet sendt.</b></p>
<p align="center"><%if topic <> "" then%><a href="philboard_read.asp?id=<%=topic%>&recordnum=<%=recordnum%>">back to topic</a><%else%><a href="inbox.asp">tilbage til indbakke</a> | <a href="userview.asp">tilbage til profil liste</a><%end if%> | <a href="index.asp">tilbage til startsiden</a></p>
</font>
</body>
</html>
<%Function senderror()%>
<p><b>Du har ikke udfyldt nedenstående felter rigtigt:</b></p>
<%for count = 0 to 2%>
<%if notfilled(count) <> "" then%>
<b><%=notfilled(count)%></b><br>
<%end if%>
<%next%>
<p><a href="java script:self.history.go(-1)">Forsøg venligst igen</a></p>
</font>
</body>
</html>
<%Response.end
End Function%>
<%Function nouser()%>
<p><b>Profilen "<%=sendto%>" eksisterer ikke.</b></p>
<p><a href="java script:self.history.go(-1)">Forsøg venligst igen</a></p>
</font>
</body>
</html>
<%Response.end
End Function%>
<%
conn.close
set conn = nothing
%>
