2013-05-08 9 views
-1

아무도 내 이전 게시물에 응답하지 않았으므로 다시 게시하고 있습니다.첨부 파일이있는 전자 메일을 여러 번 보내십시오.

각각의 PDF 파일이 첨부 된 여러 수신자에게 전자 메일을 보내려고합니다. 여러 수신자에게 이메일을 보냈지 만 수신자가 여러 이메일을 수신했습니다. 수신자가받은 전자 메일 수는 데이터베이스에 저장된 전자 메일 주소 수입니다.

내가 만난 두 번째 문제는 수신자에게 보낸 첨부 파일이 모두 동일한 파일이라는 것입니다. 시나리오는 다음과 같아야합니다. 수신자 A는 pdf A가 첨부 된 이메일을, 수신자 B는 pdf B를 첨부해야합니다.

해당 pdf의 파일 이름은 각 수신자가 가진 고유 한 제어 번호와 일치합니다. 예 : 수신자 A는 대조 번호가 1234이므로 그의 pdf 이름은 1234.pdf입니다.

$ ctrl_no = mysql_result ($ ctrl, 0)에서 wile 루프를 시도했지만 서버의 메모리 제한에 도달했다는 오류가 발생합니다.

희망 사항을 통해 내 2 가지 문제를 해결할 수 있습니다.

$input = addslashes($_POST['dep']);                          

$email = "select email_address from student y where y.center = '$input'"; 


if ($p_address=mysql_query($email)) 
{ 

while($row = mysql_fetch_array($p_address)) 
{  

$mail->AddAddress($row[0]); 

$input = addslashes($_POST['dep']);       


$control = "select control_no from student y where y.center = '$input'"; 

if($ctrl=mysql_query($control)){ 

$ctrl_no = mysql_result($ctrl, 0); 


$mail->AddAttachment("reports/".$ctrl_no.".pdf"); 


} 
    else{ 

    echo "No attached pdf."; 

    } 

UPDATE : 당신은 하나의 이메일로 다른 사람에게 다른 첨부 파일을 보낼 수 없습니다 $ 메일 기능

require_once('phpmailer/class.phpmailer.php'); 
include("phpmailer/class.smtp.php"); 

$mail    = new PHPMailer(); 

$body    = file_get_contents('phpmailer/body.html'); 
$body    = preg_replace('/\/b]/','',$body); 

$mail->IsSMTP(); 
$mail->Host  = "smtp.gmail.com"; 
$mail->SMTPDebug = 1;     

$mail->SMTPAuth = true;     
$mail->SMTPSecure = "tls";     
$mail->Host  = "smtp.gmail.com";  
$mail->Port  = 587;     
$mail->Username = "[email protected]"; 
$mail->Password = mypass;   

$mail->SetFrom("[email protected]", "Office"); 

$mail->AddReplyTo("[email protected]"," Office"); 

$mail->Subject = "My Subject"; 

$mail->AltBody = "Subject file"; 

$mail->MsgHTML($body); 
+1

같은 질문을 다시 게시하지 마십시오. 이전 답변을 좋아하지 않으 셨기 때문에 – RMcLeod

+0

불쾌감을 드려 ​​죄송합니다. 하지만 내 문제를 해결하는 대답을 좋아해야합니까? 나는 대답을 좋아하는 것뿐만 아니라 도움을 구하기 위해 여기에 온 것을 의미합니다. 이전 질문을 삭제하고 다른 사람이이 글을 읽고 도움을 줄 수 있도록 새 질문을 올렸습니다. 난 당신이 이해 바랍니다. 어쨌든 고맙습니다. – banana

+1

답변을받지 못했기 때문에 다시 게시해서는 안되며 사람들은 대답하지 않은 섹션을 자주 방문합니다. – RMcLeod

답변

0

. 별도의 이메일을 보내야합니다.

0

나는 당신의 문제가 단지 while 루프, 보낸 사람의 pdf 파일 이름 및 이메일을 가져 오는 중 오류에 대한이 사용하기 위해 튜토리얼 링크

Check This

아래 전화 기능 검사를 사용하여 해결 될 수 있다고 생각 그것은 전자 메일 서버에 따라 달라 도달 메모리 제한하는 기능을

if (sendEmail("From Name", "[email protected]", "[email protected]", "Email Subject", $msg,$_FILES['Attachment Name'])) { 
echo "Email sent"; } 

전화, 심지어 PHP는

01 도움이 될 것입니다 링크 이하 too..May 100메가바이트의 첨부 파일을 보낼 수 있습니다

Click here

희망!

관련 문제