2012-01-07 2 views
0

Я пытаюсь изменить почтовый ящик phpmailer db для использования sendmail, будет ли этот код корректным ниже?. Я пытаюсь внедрить его на веб-сайт, чтобы отправить по электронной почте клиентскую базу около 2-300 контактов. Спасибо :-)Правильный способ sendmail() с phpmailer с использованием соединения db

<?php 
require_once('./send/class.phpmailer.php'); 
//include("class.smtp.php"); // optional, gets called from within class.phpmailer.php  if not already loaded 

$mail = new PHPMailer(true); //defaults to using php "mail()"; the true param means it  will throw exceptions on errors, which we need to catch 

$body    = file_get_contents('contents.html'); 
$body    = eregi_replace("[\]",'',$body); 


$mail->SetFrom('[email protected]', 'List manager'); 
$mail->AddReplyTo('[email protected]', 'List manager'); 

$mail->Subject  = "PHPMailer Test Subject via smtp, basic with authentication"; 

$query = "SELECT full_name, email, photo FROM employee WHERE id=$id"; 
$result = @MYSQL_QUERY($query); 

while ($row = mysql_fetch_array ($result)) { 
    $mail->AltBody = "To view the message, please use an HTML compatible email viewer!";  // optional, comment out and test 
    $mail->MsgHTML($body); 
    $mail->AddAddress($row["email"], $row["full_name"]); 
    $mail->AddStringAttachment($row["photo"], "YourPhoto.jpg"); 

    if(!$mail->Send()) { 
    echo "Mailer Error (" . str_replace("@", "&#64;", $row["email"]) . ') ' .   $mail->ErrorInfo . '<br>'; 
    } else { 
    echo "Message sent to :" . $row["full_name"] . ' (' . str_replace("@", "&#64;",  $row["email"]) . ')<br>'; 
} 
// Clear all addresses and attachments for next loop 
$mail->ClearAddresses(); 
$mail->ClearAttachments(); 
} 
?>  
+0

У вас есть проблема с этим кодом? –

+0

Нет, я просто объединил простой почтовый скрипт, который использует почтовую функцию и почтовый ящик db, который использует функцию smtp, и удалил часть smtp и добавил часть sendmail из другого скрипта, я просто убедился, что мой взлом кода было в порядке :-). –

+0

в скрипте говорит WHERE id = $ id, мне нужно определить $ id, поскольку я не могу найти какой-либо другой ref в нем в скрипте или phpmailer.php –

ответ

1

Это должно работать, но убедитесь, что эта функция поддерживается хостинговой компании.

Смежные вопросы