아무도 내 이전 게시물에 응답하지 않았으므로 다시 게시하고 있습니다.첨부 파일이있는 전자 메일을 여러 번 보내십시오.
각각의 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);
같은 질문을 다시 게시하지 마십시오. 이전 답변을 좋아하지 않으 셨기 때문에 – RMcLeod
불쾌감을 드려 죄송합니다. 하지만 내 문제를 해결하는 대답을 좋아해야합니까? 나는 대답을 좋아하는 것뿐만 아니라 도움을 구하기 위해 여기에 온 것을 의미합니다. 이전 질문을 삭제하고 다른 사람이이 글을 읽고 도움을 줄 수 있도록 새 질문을 올렸습니다. 난 당신이 이해 바랍니다. 어쨌든 고맙습니다. – banana
답변을받지 못했기 때문에 다시 게시해서는 안되며 사람들은 대답하지 않은 섹션을 자주 방문합니다. – RMcLeod