Kan de tutorial niet vinden...

Overzicht Reageren

Sponsored by: Vacatures door Monsterboard

Jelle Sturm

Jelle Sturm

19/12/2008 19:10:00
Quote Anchor link
Hey,

Ik ben op zoek naar een tutorial of script waarmee ik via een formulier een mass mail naar alle email adressen in mijn MySQL database kan sturen.

Ik heb gezocht op google maar ik vond niets,...

Jelle
 
PHP hulp

PHP hulp

29/11/2024 00:31:25
 
--

--

19/12/2008 19:11:00
Quote Anchor link
Geef me 5 minuten.
 
Max S

Max S

19/12/2008 19:12:00
Quote Anchor link
dan moet je eerst weten hoe je database eruit ziet, een script of tutorial kan dat ook niet ruiken..
heb je een PM systeem op je website staan?
 
--

--

19/12/2008 19:30:00
Quote Anchor link
Ietsje langer, maar het gaat om het idee. :-)

Code (php)
PHP script in nieuw venster Selecteer het PHP script
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
<?php
if($_SERVER['REQUEST_METHOD'] != 'POST')
{

    //Er is niets gepost, dus het formulier laten zien
    echo '<form action="" method="post">
              Onderwerp:<br />
              <input type="text" name="onderwerp" /><br />
              Bericht<br />
              <textarea name="bericht"></textarea><br />
              <input type="submit" value="versturen">
          </form>'
;
}

else
{
    //Er is wel gepost, dus controleren/versturen
    if(empty($_POST['onderwerp']) || empty($_POST['bericht']))
    {

        //Er waren een aantal velden leeg, opnieuw invullen
        echo 'Je moet alle velden invullen!<br />
              <form action="" method="post">
                  Onderwerp:<br />
                  <input type="text" name="onderwerp" value="'
. $_POST['onderwerp'] . '" /><br />
                  Bericht<br />
                  <textarea name="bericht">'
. $_POST['bericht'] . '</textarea><br />
                  <input type="submit" value="versturen">
              </form>'
;
    
    }

    else
    {
        //Alles is ingevuld, dus mailadressen ophalen en bericht versturen
        require_once "lib/Swift.php";
        require_once "lib/Swift/Connection/SMTP.php";
        
        $swift = new Swift(new Swift_Connection_SMTP("localhost")); //meestal localhost, als het niet werkt, neem dan het adres van de mailserver van je provider
        
        $bericht = new Swift_Message(htmlentities($_POST['onderwerp']), htmlentities($_POST['bericht']));
        
        //mailadressen ophalen
        $mailQuery  = "SELECT mailadress, naam FROM tabel";
        $mailResult = mysql_query($mailQuery);
        
        if(!$mailResult)
        {

            echo 'Het ophalen van de mailadressen is mislukt! Error:' . mysql_error();
        }

        else
        {            
            $ontvangers =& new Swift_RecipientList();
            $ontvangers->addTo("[email protected]", "Je naam");
            
            while($row = mysql_fetch_assoc($mailResult))
            {

                $ontvangers->addBcc($row['mailadres'], $row['naam']);
            }

            
            //Het aantal dat verzonden is opvragen
            $number_sent = $swift->send($bericht, $ontvangers, "[email protected]");
            echo 'Het bericht is verzonden naar ' . $number_sent . ' ontvangers.';
        }
    }
}

?>


Niet getest.
Gewijzigd op 01/01/1970 01:00:00 door --
 
Jelle Sturm

Jelle Sturm

19/12/2008 20:42:00
Quote Anchor link
^^bedankt

Ik weet hoe mijn database er uit ziet.

table: email

table rows: ID->met auto increment en primary key
email->hier slaag ik de emails in op.

^^Hoe kan ik dat integreren in dat scriptje hierboven?
 
--

--

19/12/2008 21:06:00
Quote Anchor link
Dan pas je het stukje 'mailadressen ophalen' aan. Er staan ook nog wat e-mailadressen in die je nog moet aanpassen.
 
Joren de Wit

Joren de Wit

19/12/2008 22:55:00
Quote Anchor link
En uiteraard zul je de Swift Mailer klasse moeten downloaden, die wordt immers gebruikt in dat stukje script...
 
--

--

19/12/2008 22:56:00
Quote Anchor link
Owja, vergeten te zeggen. Vind het al zo vanzelfsprekend, haha :-)
 
Jelle Sturm

Jelle Sturm

19/12/2008 23:28:00
Quote Anchor link
:p bedankt voor de hulp.

Zal het morgen uitproberen.
 
Andytjuh Bruggeman

andytjuh Bruggeman

20/12/2008 00:41:00
Quote Anchor link
In ieder geval.

Bij mij werkt het :)
 
Jelle Sturm

Jelle Sturm

20/12/2008 11:09:00
Quote Anchor link
Bij mij niet :(

Fatal error: Uncaught exception 'Swift_ConnectionException' with message 'The SMTP connection failed to start [localhost:25]: fsockopen returned Error Number 110 and Error String 'Connection timed out'' in /customers/buxonline.net/buxonline.net/httpd.www/lib/Swift/Connection/SMTP.php:309 Stack trace: #0 /customers/buxonline.net/buxonline.net/httpd.www/lib/Swift.php(216): Swift_Connection_SMTP->start() #1 /customers/buxonline.net/buxonline.net/httpd.www/lib/Swift.php(101): Swift->connect() #2 /customers/buxonline.net/buxonline.net/httpd.www/massmail.php(238): Swift->__construct(Object(Swift_Connection_SMTP)) #3 {main} thrown in /customers/buxonline.net/buxonline.net/httpd.www/lib/Swift/Connection/SMTP.php on line 309


Ik heb die name weg gedaan want ik heb geen namen in database, alleen emails

EDIT: Ik heb alleen de lib map van die class geupload, is het dat?
Gewijzigd op 01/01/1970 01:00:00 door Jelle Sturm
 



Overzicht Reageren

 
 

Om de gebruiksvriendelijkheid van onze website en diensten te optimaliseren maken wij gebruik van cookies. Deze cookies gebruiken wij voor functionaliteiten, analytische gegevens en marketing doeleinden. U vindt meer informatie in onze privacy statement.