Avatar billede malte Nybegynder
12. august 2001 - 07:57 Der er 19 kommentarer og
1 løsning

Send navn med jmail

Jeg vil gerne sende navnet med f.ex. Hej \"palle\" så emailen dette script sender starter med dette.
databasen hedder users og tabellen username.

<%
    Else
        Dim objSendConn, objSendRS, strSendSQL, itmUsers, intX, i
        Set objSendConn = Server.CreateObject(\"ADODB.Connection\")
        objSendConn.Provider = \"Microsoft.Jet.OLEDB.4.0\"
        objSendConn.Open Server.MapPath(\"../user.mdb\")

        strSendSQL = \"Select * From Users Where MailingList=\'True\'\"

        Set objSendRS = Server.CreateObject(\"ADODB.Recordset\")
        objSendRS.Open strSendSQL, objSendConn, 1, 2

        intX = objSendRS.RecordCount
   
        Dim strBody
        strBody = \"Mailing List: \" & Request.Form(\"txtSubject\") & \"<br> Users on list: \" & intX & \"<br><br>\" & VbCrlf
        strBody = strBody & Replace(Request.Form(\"txtMessage\"), VbCrlf, \"<br>\")
        strBody = strBody & \"<br><br><br>---------------------------------------------<br>\" & VbCrlf
        strBody = strBody & \"You are receiving this e-mail because you signed up for the<br>\" & VbCrlf
        strBody = strBody & SiteName & \"mailing list.<br>\"
        strBody = strBody & \"To be removed, <a href=\'\" & SiteLink & ForumDir & \"remove.asp\'>click here</a>\"

        If Not objSendRS.EOF Then
            itmUsers = objSendRS.GetRows(intX, 0)
   
            For i = 0 To intX - 1
                Call SendMail(itmUsers(2, i))
            Next
        End If

        objSendRS.Close
        objSendConn.Close

        Set objSendRS = Nothing
        Set objSendConn = Nothing
   
    %>
Avatar billede prof2 Nybegynder
12. august 2001 - 09:38 #1
Skal du ikke bare bruge objSendRS(\"username\"), der hvor navnet skal stå? Ellers forstår jeg det ikke.
Avatar billede malte Nybegynder
12. august 2001 - 09:43 #2
Sådan her ??

Dim strBody
        strBody = \"Mailing List: \" & Request.Form(\"txtSubject\") & \"<br> Users on list: \" & intX & \"<br><br>\" & VbCrlf
        strBody = strBody & \"Hej: \" objSendRS(\"username\")
        strBody = strBody & Replace(Request.Form(\"txtMessage\"), VbCrlf, \"<br>\")
        strBody = strBody & \"<br><br><br>---------------------------------------------<br>\" & VbCrlf
        strBody = strBody & \"You are receiving this e-mail because you signed up for the<br>\" & VbCrlf
        strBody = strBody & SiteName & \"mailing list.<br>\"
        strBody = strBody & \"To be removed, <a href=\'\" & SiteLink & ForumDir & \"remove.asp\'>click here</a>\"

Det her virker ikke :-
Avatar billede prof2 Nybegynder
12. august 2001 - 09:45 #3
Hvad er der galt med det ?? Hvad siger den ?
Avatar billede malte Nybegynder
12. august 2001 - 09:47 #4
Avatar billede prof2 Nybegynder
12. august 2001 - 09:49 #5
Hvad gør denne funktion??
Call SendMail(itmUsers(2, i))
Avatar billede malte Nybegynder
12. august 2001 - 09:49 #6
min browser viser ikke andet :-(
Avatar billede malte Nybegynder
12. august 2001 - 09:50 #7
det ved jeg ikke ??
Avatar billede malte Nybegynder
12. august 2001 - 09:51 #8
Jeg tror den har noget med at mailen indeholder \"antal brugere\" så alle ved hvor mange der er med
Avatar billede prof2 Nybegynder
12. august 2001 - 09:58 #9
Jeg kan ikke forstå dit script. Skal der ikke være en eller anden form for løkke, der skal gå igennem alle de brugere der har valg nyhedsbrev. Men det gør den ikke. Jeg kan ikke hjælpe, desværre.
Avatar billede malte Nybegynder
12. august 2001 - 09:59 #10
hvad hvis du får hele scriptet ??
<%@ Language=VBScript %>
<% Response.Expires = 0 %>
<!-- #include file=\"../name.inc\" -->
<!--#include virtual=\"cb top.shtm\" -->
<html>
<head>
<title><%=ForumName%></title>
</head>
<body bgcolor=\"#0099FF\" text=\"#000000\" link=\"#000000\" vlink=\"#333333\" alink=\"#333333\">
<table width=\"750\" border=\"0\" cellspacing=\"0\" cellpadding=\"0\" align=\"center\">
  <tr>
    <td><b><font size=\"7\" color=\"#FF0000\" face=\"Geneva, Arial, Helvetica, san-serif\"><%=SiteName%>
      Administrations omr&aring;de</font></b></td>
    <td valign=\"bottom\" align=\"right\">&nbsp;</td>
  </tr>
  <tr>
    <td colspan=\"2\"><font size=\"2\" face=\"Geneva, Arial, Helvetica, san-serif\"><a href=\"default.asp\">Admin
      Center</a>/Send Mail </font></td>
  </tr>
</table>
<br>
<table width=\"750\" border=\"1\" cellspacing=\"0\" cellpadding=\"0\" align=\"center\" bordercolor=\"#666666\" bgcolor=\"#CCCCCC\">
  <tr>
    <td>
      <table width=\"750\" border=\"0\" cellspacing=\"0\" cellpadding=\"0\">
        <tr>
          <td width=\"10\">&nbsp;</td>
          <td width=\"483\"> <font size=\"2\" face=\"Geneva, Arial, Helvetica, san-serif\">
            <%
    If Request.Form.Count = 0 Then
%>
            </font>
            <form method=\"post\" action=\"sendmail.asp\">
              <p><font size=\"2\" face=\"Geneva, Arial, Helvetica, san-serif\">Emne:
                <input type=\"text\" name=\"txtSubject\">
                <br>
                Selve beskeden:<br>
                <textarea name=\"txtMessage\" cols=\"60\" rows=\"20\"></textarea>
                </font></p>
              <p> <font size=\"2\" face=\"Geneva, Arial, Helvetica, san-serif\">
                <input type=\"submit\" value=\"Send\" name=\"submit\">
                </font></p>
            </form>
            <font size=\"2\" face=\"Geneva, Arial, Helvetica, san-serif\">
            <%
    Else
        Dim objSendConn, objSendRS, strSendSQL, itmUsers, intX, i
        Set objSendConn = Server.CreateObject(\"ADODB.Connection\")
        objSendConn.Provider = \"Microsoft.Jet.OLEDB.4.0\"
        objSendConn.Open Server.MapPath(\"../user.mdb\")

        strSendSQL = \"Select * From Users Where MailingList=\'True\'\"
        strSendSQL = \"Select * From Users\"

        Set objSendRS = Server.CreateObject(\"ADODB.Recordset\")
        objSendRS.Open strSendSQL, objSendConn, 1, 2
       

               
        intX = objSendRS.RecordCount
   
        Dim strBody
        strBody = \"Mailing List: \" & Request.Form(\"txtSubject\") & \"<br> Users on list: \" & intX & \"<br><br>\" & VbCrlf
        strBody = strBody & \"Hej: \" objSendRS(\"username\")
        strBody = strBody & Replace(Request.Form(\"txtMessage\"), VbCrlf, \"<br>\")
        strBody = strBody & \"<br><br><br>---------------------------------------------<br>\" & VbCrlf
        strBody = strBody & \"You are receiving this e-mail because you signed up for the<br>\" & VbCrlf
        strBody = strBody & SiteName & \"mailing list.<br>\"
        strBody = strBody & \"To be removed, <a href=\'\" & SiteLink & ForumDir & \"remove.asp\'>click here</a>\"

        If Not objSendRS.EOF Then
            itmUsers = objSendRS.GetRows(intX, 0)
   
            For i = 0 To intX - 1
                Call SendMail(itmUsers(2, i))
            Next
        End If

        objSendRS.Close
        objSendConn.Close

        Set objSendRS = Nothing
        Set objSendConn = Nothing
   
    %>
            F&oslash;lgende beskeder er blevet sendt til <%=intX%> brugere<br>
            __________________________Start Besked__________________________<br>
            <br>
            <%=strBody%>
            <%
    End If
    sub SendMail(strTo)

    Set jMail = Server.CreateObject(\"JMail.Message\")
    With jMail
      .AddRecipient strTo
      .From = \"webmaster@counselor.dk\"
      .FromName = SiteName & \" Mærkedagskalenderen\"  \' kan ikke bruges i .From da serveren derved afviser mail-afsenderen ...
      .Subject = \"\" & strSub
      .HTMLBody = strBody
     
\' Hvis bruger ikke kan se html ser han dette ...
\'Body = \"Too bad you can\'t read HTML-mail.\"
\'.appendText \" There would have been a nice picture for you\"

      .Send(\"indee.dk\")
    End With

        Set jMail = Nothing

    End Sub

%>
            </font></td>
        </tr>
      </table>
    </td>
  </tr>
</table>
<div align=\"center\"><font face=\"Geneva, Arial, Helvetica, san-serif\" size=\"2\"><br>
  </font> </div>
</body>
</html>
Avatar billede malte Nybegynder
12. august 2001 - 10:00 #11
Den her giver internal server error 500
strBody = strBody & \"Hej: \" objSendRS(\"username\")
Avatar billede prof2 Nybegynder
12. august 2001 - 10:08 #12
Med den måde scriptet er bygget op, er det ikke sådan lige til at skrive brugernavnet i mailen.
Avatar billede malte Nybegynder
12. august 2001 - 10:21 #13
Vil du kunne hjælpe mig (mod nogle flere point) hvis du fik ftp adgang ?
Avatar billede erikjacobsen Ekspert
12. august 2001 - 10:58 #14
strBody = strBody & \"Hej: \" & objSendRS(\"username\")
Avatar billede malte Nybegynder
12. august 2001 - 11:09 #15
Jeg har prøvet forskellige muligheder, men kan ikke få et <br> ind uden at få en fejl?
strBody = \"Mailing List: \" & Request.Form(\"txtSubject\") & \"<br> Users on list: \" & intX & \"<br><br>\" & VbCrlf
        strBody = strBody & \"Hej: \" & objSendRS(\"username\") & VbCrlf & VbCrlf    \'her ville jeg gerne have et <br>  :-)
        strBody = strBody & Replace(Request.Form(\"txtMessage\"), VbCrlf, \"<br>\")
        strBody = strBody & \"<br><br><br>---------------------------------------------<br>\" & VbCrlf
Avatar billede malte Nybegynder
12. august 2001 - 11:12 #16
erikjacobsen<<< strBody = strBody & \"Hej: \" & objSendRS(\"username\") det virkede :-) jeg mangler bare et <br> bagved (uden det giver en fejl)
Avatar billede erikjacobsen Ekspert
12. august 2001 - 11:14 #17
strBody = strBody & \"Hej: \" & objSendRS(\"username\")  & \"<br>\"
Avatar billede malte Nybegynder
12. august 2001 - 11:17 #18
erikjacobsen<<< Du er en hård mand til det her :-)
Kan du ikke give mig et svar så du kan få nogle point :-)
Avatar billede erikjacobsen Ekspert
12. august 2001 - 11:19 #19
tjoh -men jeg har jo bare sat et par små tegn rundt omkring
Avatar billede malte Nybegynder
12. august 2001 - 11:21 #20
\" I de blindes rige er den enøjede konge\"  :-)
Avatar billede Ny bruger Nybegynder

Din løsning...

Tilladte BB-code-tags: [b]fed[/b] [i]kursiv[/i] [u]understreget[/u] Web- og emailadresser omdannes automatisk til links. Der sættes "nofollow" på alle links.

Loading billede Opret Preview
Kategori
Kurser inden for grundlæggende programmering

Log ind eller opret profil

Hov!

For at kunne deltage på Computerworld Eksperten skal du være logget ind.

Det er heldigvis nemt at oprette en bruger: Det tager to minutter og du kan vælge at bruge enten e-mail, Facebook eller Google som login.

Du kan også logge ind via nedenstående tjenester