i have problem asp classic 3.0 code.
i need send email message when sql query found in database table records :
sql = " select * dotable div = 1; "
and have tried asp code:
sql = " select * dotable div = 1; " set rec = createobject("adodb.recordset") rec.open sql, cn if not rec.eof msg = msg & vbcrlf & "<br />records founds!<br />" while not rec.eof msg = msg & vbcrlf & "id record: " & rec("id") & "" msg = "" rec.movenext() loop else msg = msg & vbcrlf & "<br />no records!<br />" end if rec.close() set rec = nothing cn.close() set cn = nothing
the problem part of code:
msg = ""
if have found records , msg = "" present in code output of msg empty; if msg = "" not present in code output is:
records founds! id record: 32 records founds! id record: 61 records founds! id record: 77
why can not output ?
records founds! id record: 32 id record: 61 id record: 77
can me? thank in advance-
edit
with objmessage .from = rs("email_from") .to = rs("email_to") .subject = "alert div" .htmlbody = msg .fields("urn:schemas:httpmail:importance").value = 2 .fields("urn:schemas:mailheader:x-msmail-priority") = 6 .fields.update() on error resume next .send if err.number <> 0 response.write "email send failed # : " & err.number & " - " & err.description & ".<br />"&vbcrlf end if end
msg = msg & vbcrlf & "id record: " & rec("id") & "" msg = ""
this code doesn't make sense, msg = ""
changes value of msg empty string, , makes previous line pointless. make more sense have msg = ""
before start looping through recordset.
try this
sql = " select * dotable div = 1; " msg = "" msg = msg & vbcrlf & "<br />records founds!<br />" set rec = server.createobject("adodb.recordset") rec.open sql, cn if rec.eof , rec.bof msg = "<br />no records!<br />" else while not rec.eof msg = msg & vbcrlf & "id record: " & rec("id") & "" rec.movenext loop end if rec.close set rec = nothing cn.close set cn = nothing
Comments
Post a Comment