2011-10-01 7 views
0

PHPmailer를 사용하여 전자 메일을 보내고 전자 메일을 준비하고 보내는 기능을 만들었습니다. 스크립트에서이 함수를 두 번 이상 사용하려고 시도하면 동일한 함수를 사용하여 두 번째 전자 메일을 보낼 때 스크립트 실행이 중지됩니다.동일한 스크립트에서 두 개의 전자 메일을 보내려고하면 PHPmailer가 작동하지 않습니다.

내 기능 :

public static function sendEmail($from, $fromName, $to, $subject, $body){ 
    require("includes/class.phpmailer.php"); 

    $mailer = new PHPMailer(); 
    $mailer->IsSMTP(true); 
    $mailer->Host = 'ssl://smtp.gmail.com:465'; 
    $mailer->SMTPAuth = true; 
    $mailer->Username = 'removed'; 
    $mailer->Password = 'removed'; 

    $mailer->From  = $from; 
    $mailer->FromName = $fromName; 
    $mailer->AddAddress($to); 
    $mailer->Subject = $subject; 
    $mailer->Body  = $body; 
    $mailer->WordWrap = 100; 
    if ($mailer->Send()) { 
     return true; 
    } else { 
     return false; 
    } 
} 

왜 이런 일이 무엇입니까? 매번 새로운 phpmailer 객체를 만드는 것과 관련이 있습니까?

+2

최초의 require_once()을 사용한다고 생각 나는 –

+0

을 필요로 그리고 당신의 오류보고를 활성화하지 않는 한 require_once를를 사용하는 것이 좋습니다 것입니다. 오류 메시지가 표시되어야합니다. –

답변

3

내가 대신 모든 require

+0

간단하다고 믿을 수 없습니다! 고마워요 :) – Chris