Avatar billede bartelsen Nybegynder
22. april 2004 - 21:46 Der er 15 kommentarer og
1 løsning

Sende mail til brugere i database

Hej

Jeg har en MySQL database på et webhotel og der er oprettet nogle brugere.. Jeg er træt af at hive dem ud af databasen og kopierne dem ud i outlook og på en bøvlet måde sende mails..

Hvordan ser et script ud som kan hente mailadresserne i databasen og lave et "vindue" jeg kan skrive mails i?

Er der nogen der har mod og tålmodighed til at hjælpe mig.. smiler..

Bartelsen
Avatar billede cpufan Juniormester
22. april 2004 - 21:53 #1
<HTML>
<HEAD>
<TITLE>Mailingliste</TITLE>
</HEAD>
<BODY BGCOLOR="#FFFFFF" TEXT="#000000">
<%
if request("mode") = "send" then
'****** VÆLG PROGRAM TIL AT SENDE MAILEN ******
'1 = JMAIL
'2 = CDONTS

mailertype = 1

'**********************************************

Set Conn = Server.CreateObject("ADODB.Connection")
conn.Open "DBQ="&(Server.MapPath(".")) &"\dindatabase.mdb; DefaultDir=DBQ="&(Server.MapPath(".")) &"\;Driver={Microsoft Access Driver (*.mdb)};"
    SQL = "SELECT * from mailingliste"
    set send = conn.execute( SQL )
    do while not send.eof
    on error resume next
if mailertype = 1 then
        Set JMail = Server.CreateObject("JMail.SMTPMail")
        ' This is my local SMTP server
        JMail.ServerAddress = "mail.ditdomæne.dk"
   
        ' mail config settings
        JMail.Charset = "iso-8859-1"
        JMail.ContentTransferEncoding = "8bit"
       
        JMail.Sender = "mail@ditdomæne.dk"
        JMail.Subject = request("header")
        JMail.AddRecipient send("email")
        JMail.Body = request("tekst")
       
        ' 1 - highest priority (Urgent)
        ' 3 - normal
        ' 5 - lowest
       
        JMail.Priority = 3
       
        ' Send it...
        JMail.Execute
        set JMail = nothing
elseif mailertype = 2 then

        ' importance = 0        ' lav
        importance = 1        ' normal
        ' importance = 2        ' høj

        Set mailObj = CreateObject("CDONTS.NewMail")
   
        ' send email med parametre : fra email, til email, header, besked, importance
        mailObj.Send "afsenders emailadresse", send("email"), request("header"), request("tekst"), importance

        ' slet reference til CDONTS object
        Set mailObj = Nothing
end if



response.write "<FONT FACE='Arial' SIZE='2' COLOR='#000000'><STRONG>E-mail er sendt til : "& send("email") &"</STRONG></FONT><BR>"
send.movenext
loop
conn.close
else %>
<CENTER>
<TABLE BORDER="0">
<form action="write_send.asp" METHOD="POST">
<INPUT TYPE="hidden" NAME="mode" VALUE="send">
  <TR>
    <TD ALIGN="LEFT">
    <FONT FACE="Arial" SIZE="2" COLOR="#000000"><STRONG>
    Overskrift:&nbsp;
    </STRONG></FONT>
    </TD>
    <TD ALIGN="LEFT">
    <INPUT TYPE="TEXT" NAME="header" SIZE="50">
    </TD>
  </TR>
  <TR>
    <TD ALIGN="RIGHT" VALIGN="TOP">
    <FONT FACE="Arial" SIZE="2" COLOR="#000000"><STRONG>
    Tekst:&nbsp;
    </STRONG></FONT>
    </TD>
    <TD ALIGN="LEFT">
    <TEXTAREA COLS="45" ROWS="15" NAME="tekst"></TEXTAREA>
    </TD>
  </TR>
  <TR>
    <TD ALIGN="LEFT">
    &nbsp;
    </TD>
    <TD ALIGN="RIGHT">
        <input type="submit" value="-- SEND --">
    </TD>
  </TR>
</FORM>
</TABLE>
</CENTER>
<% end if %>
</BODY>
</HTML>
Avatar billede cpufan Juniormester
22. april 2004 - 21:55 #2
og det er så ikke lige 200 point værd, men den virker ;)
Avatar billede cpufan Juniormester
22. april 2004 - 22:00 #3
Havde så ikke lige set at det var MySql så du skal udskifte

Set Conn = Server.CreateObject("ADODB.Connection")
conn.Open "DBQ="&(Server.MapPath(".")) &"\dindatabase.mdb; DefaultDir=DBQ="&(Server.MapPath(".")) &"\;Driver={Microsoft Access Driver (*.mdb)};"

med

Set Conn = Server.CreateObject("ADODB.Connection")
        Conn.Open "Driver={MySQL ODBC 3.51 Driver}; SERVER=localhost;UID=XXX;PWD=XXX;DATABASE=XXX;"
Avatar billede cpufan Juniormester
22. april 2004 - 22:01 #4
scriptet er iøvrigt asp,

ved jeg ikke om du kan bruge?
Avatar billede bartelsen Nybegynder
22. april 2004 - 22:06 #5
Hvis det virker er det mere end 200 point værd.. Men jeg skal lige vide lidt mere.. Hvor skal jeg tilføje mine ting.. Såsom min mail og hvordan tilføjer jeg databasen?? Nu kommer tålmodigheds prøven.. smiler
Avatar billede cpufan Juniormester
22. april 2004 - 22:11 #6
de 3 gange XXX udskiftes med dit brugernavn, password og databasenavn til mysql
Avatar billede cpufan Juniormester
22. april 2004 - 22:12 #7
SELECT * from mailingliste

ændres til

Select >>navn på emailadressekolonnen<< from  >>dintabelnavn<<
Avatar billede cpufan Juniormester
22. april 2004 - 22:14 #8
ditdomæne ændres til - ja sjovt nok

ditdomænenavn
Avatar billede cpufan Juniormester
22. april 2004 - 22:15 #9
JMail.AddRecipient send("email")

ændres til

JMail.AddRecipient send(">>kolonnenavnet-med-emailadresserne-i-db<<")
Avatar billede cpufan Juniormester
22. april 2004 - 22:16 #10
og så skal du iøvrigt gemme hele filen som

write_send.asp
Avatar billede cpufan Juniormester
22. april 2004 - 22:16 #11
that's it
Avatar billede bartelsen Nybegynder
22. april 2004 - 22:21 #12
SQL = "Select >>UserEmail<< from  >>users<<"

Er det sådan?? Skal pilene være der?
Avatar billede cpufan Juniormester
22. april 2004 - 22:22 #13
pilene skal væk, gælder alle steder

SQL = "Select UserEmail from  users"
Avatar billede bartelsen Nybegynder
22. april 2004 - 22:24 #14
Men der må godt være mellemrum? Tja undskyld jeg lige spørger så meget.. databaser er ikke mit speciale, men det er jo godt der er kompetente folk der vil hjælpe..
Avatar billede cpufan Juniormester
22. april 2004 - 22:26 #15
mellemrum er ok der
Avatar billede cpufan Juniormester
22. april 2004 - 22:27 #16
hvis du mailer mig oplysningerne skal jeg sætte dem ind for dig:

jd @ adweb.dk    << der skal du så fjerne mellemrum
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
Computerworld tilbyder specialiserede kurser i database-management

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