Weet iemand of het mogelijk is om met swiftmailer bij het versturen van de mail een mysql link erin te zetten?

Dus in dit stukje:

<?
if ($swift->send($message, new Swift_Address("[email protected]", "Marco"), new Swift_Address("[email protected]", "Mijn site")))
?>

Iets als?:

<?
$result = mysql_query("SELECT * FROM mailing_test");
while ($row = mysql_fetch_assoc ($query)) {
$mailer->addBCC($row['email']);
$mail->SMTPAuth = true;
}
?>

Dit stukje komt uit mijn phpmailer, maar dit werkt niet meer.

Is dit dan in swiftmailer te plaatsen???

Als iemand mij hiermee kan helpen...graag...

Alvast bedankt...
Dank je, k heb het nu werkend!
Ik dacht dat ik het werkend had. Als ik een mailing van 250 verstuur krijg ik een error.

Is het ook mogelijk dat het script elke keer 25 of 50 stuks mailt en dan even wacht voordat hij weer verder mailt?

Ik heb het script deels hieronder :

<?
require_once "lib/Swift.php";
require_once "lib/Swift/Connection/SMTP.php";

$smtp =& new Swift_Connection_SMTP("smtp1.servage.net", 25);
$smtp->setUsername("********");
$smtp->setpassword("********");

$swift =& new Swift($smtp);
$bericht = new Swift_Message("Mailing", "$htmlbody", "text/html");

//mailadressen ophalen
$mailQuery = "SELECT email FROM mailing";
$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]", "Mailing");

while($row = mysql_fetch_assoc($mailResult))
{
$ontvangers->addBcc($row['email']);
}

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

Ik weet dat het kan, alleen kom ik er niet uit hoe ik dat moet doen, hopelijk wil iemand mij hiermee helpen.

Niet Bumpen:

Twee of meer keer achter elkaar in een topic posten heet bumpen. Bumpen is pas na 24 uur toegestaan en kan een reden zijn voor de admins en moderators om een topic te sluiten. Gebruik indien nodig de knop om je tekst aan te passen.

SanThe.

Marco schreef op 11.01.2009 15:44
Ik dacht dat ik het werkend had. Als ik een mailing van 250 verstuur krijg ik een error.
Welke error? Het zou in principe gewoon moeten werken...
Als ik naar een kleine database van 3 stuur om te testen werkt het inderdaad,maar zodra ik het naar de echte verstuur niet meer...

Dit is de melding:

Fatal error: Uncaught exception 'Swift_BadResponseException' with message 'Expected response code(s) [250] but got response [421 smtp1.servage.net Error: too many errors]' in /mounted-storage/home114a/sub008/sc22098-IKIW/www/site/admin/mailing/swift/lib/Swift.php:250 Stack trace: #0 /mounted-storage/home114a/sub008/sc22098-IKIW/www/site/admin/mailing/swift/lib/Swift.php(310): Swift->assertCorrectResponse(Object(Swift_Events_ResponseEvent), 250) #1 /mounted-storage/home114a/sub008/sc22098-IKIW/www/site/admin/mailing/swift/lib/Swift.php(319): Swift->command('RSET', 250) #2 /mounted-storage/home114a/sub008/sc22098-IKIW/www/site/admin/mailing/swift/lib/Swift.php(455): Swift->reset() #3 /mounted-storage/home114a/sub008/sc22098-IKIW/www/site/admin/mailing/swift/update-mailing.php(139): Swift->send(Object(Swift_Message), Object(Swift_RecipientList), 'noreply@derodeh...', 'De Rode Haan') #4 {main} thrown in /mounted-storage/home114a/sub008/sc22098-IKIW/www/site/admin/mailing/swift/lib/Swift.php on line 250
421 smtp1.servage.net Error: too many errors
Hmm, de smtp server geeft aan dat er teveel fouten opgetreden zijn?

Misschien eens googlen naar deze foutmelding om te zien wat daar de oorzaak van zou kunnen zijn? Wellicht email adressen die niet kloppen, alhoewel ik dat niet zou verwachten. Andere mogelijkheid die ik kan bedenken is dat de server het als spam ziet dat je 250 mailtjes achter elkaar verzendt. Maar goed, wellicht dat google een antwoord heeft...
Kijk eens op swiftmailer.org naar batch mailen, en gebruik dan:

<?php
$batch->setSleepTime(10); //Sleep for 10 seconds if an error occurs
?>
Ik heb dat batch mailen bekeken,maar snap niet hoe ik dat moet opzetten.

421 betekent 'service niet toegankelijk'
Dit kan worden veroorzaakt door te veel mailtjes tegelijk.
Dan zal ik dus toch via de batch moeten werken.

Op de site kan ik nergens voorbeelden vinden hoe dat werkt met een mysql database...

Reageren