2009-07-14 5 views
17

PHPMailer를 사용하여 일반 텍스트 전자 메일을 보내는 데 문제가 있습니다.PHPMailer를 사용하여 일반 텍스트 전자 메일 보내기

내가 텍스트 파일에서 읽은 텍스트가하고

받는 사람이 실제 이메일을 얻을 PHPMailer

를 통해 메일로 메일, 메일의 서식이 텍스트 파일처럼되지 않습니다, 모든에 한 줄, 내가 보내는 이메일에는 새로운 줄과 탭이 없습니다. 텍스트 배치가 완전히 해제되었습니다.

코드 :

 $mail->ContentType = 'text/plain'; 
     $mail->IsHTML(false); 
     $address = "[email protected]"; 
     $mail->AddAddress($address, "John Doe"); 

     $mail->SetFrom(EMAIL_TEST_FROM); 

     $mail->AddReplyTo(EMAIL_TEST_REPLY); 



     $mail->Subject = $action." REGISTRATION ".$formName.$tld; 
     $mail->From = EMAIL_TEST; 

     $mail->MsgHTML(file_get_contents($newFile)); 


     if($mail->Send()){ 
      return true; 
     } 
+0

그것은 도메인 등록 파일, 후이즈입니다. co.za하지만 문제가 분류되었습니다. Thx James – Roland

+0

'if ($ mail-> Send())'부분을'$ mail-> Send();'를 반환하도록 단순화 할 수 있습니다. – Melebius

답변

23

당신은 일반 텍스트 메시지에 $mail->MsgHTML()를 설정하고, 공백 포맷이 HTML에서 무시되기 때문에, 당신은 인라인 텍스트가 있어요.

나는 잠시 동안 PHPMailer를 사용하지 않은

하지만, 메모리 시도에서 : 잘 작동 코드 아래

$mail->Body = file_get_contents($newFile); 
10
$mail->ContentType = 'text/plain'; 
    $mail->IsHTML(false); 
    $address = "[email protected]"; 
    $mail->AddAddress($address, "John Doe"); 

    $mail->SetFrom(EMAIL_TEST_FROM); 

    $mail->AddReplyTo(EMAIL_TEST_REPLY); 



    $mail->Subject = $action." REGISTRATION ".$formName.$tld; 
    $mail->From = EMAIL_TEST; 

    // Very important: don't have lines for MsgHTML and AltBody 
    $mail->Body = file_get_contents($mailBodyTextFile); 
    // $mail->Body = $_POST["msg"]; //If using web mail form, use this line instead. 


    if($mail->Send()){ 
     return true; 
    } 
+1

+1 제외 할 줄을 설명하고 텍스트 전용을 트리거하기 위해 포함 할 내용을 설명합니다. – squarecandy

0

시도 :

 try { 
      $mail->AddAddress('[email protected]', 'Jit Pal'); 
      $mail->SetFrom('[email protected]', 'Test User'); 
      $mail->Subject = "All machine's tests."; 
      $mail->Body = "All machine's tests working fine."; 
      $mail->Send(); 
      echo "<br/>Message sent successfully...<br/><br/>\n"; 
     } catch (phpmailerException $e) { 
      echo $e->errorMessage(); 
     } catch (Exception $e) { 
      echo $e->getMessage(); 
     }