문제

Mail () 함수를 사용하여 메시지를 보내는 다음 코드가 있습니다. 각 라인의 끝에있는 라인 브레이크가 작동하지 않는 것을 제외하고는 모든 것이 잘 작동합니다. 보시다시피 나는 " r n"을 사용하고 있습니다. <br> 휴식을 취하기 위해서는 누군가에게 HTML 이메일 클라이언트가없는 경우에 사용하지 않습니다.

<?php
  $to = 'user@example.com'; // Was a valid e-Mail address, see comment below
  $name = $_REQUEST['name'] ;
  $email = $_REQUEST['email'] ;
  $subject = $_REQUEST['subject'] ;
  $message = $_REQUEST['message'] ;

  $content = 'Name: '.$name."\r\n";
  $content .= 'Email: '.$email."\r\n";
  $content .= 'Subject: '.$subject."\r\n";
  $content .= 'Message: '.$message."\r\n";

  $headers  = 'MIME-Version: 1.0' ."\r\n";
  $headers .= 'Content-type: text/html; charset=iso-8859-1' ."\r\n";

  // Additional headers
  $headers .= 'To: iVEC Help <help@ivec.com>'. "\r\n";
  $headers .= 'From: '.$name.' <'.$email.'>' . "\r\n";

  mail( $to, $subject, $content, $headers);

?>

<p> You sent it ... good work buddy </p>
<p> <?php   '$name' ?> </p>
도움이 되었습니까?

해결책

당신은 그것을 HTML로 보내고 있습니다 - 콘텐츠 유형을 text/plain 그리고 작동해야합니다.

다른 팁

문제는 헤더에서 메일이 HTML 이메일이라고 말하는 것입니다.

$headers .= 'Content-type: text/html; charset=iso-8859-1' ."\r\n";

HTML 및 텍스트 클라이언트 모두로 컴퓨팅 성을 보장하려면 Multipart 컨텐츠 유형을 사용해보십시오. 이것은 여러 가지 방법으로 달성 될 수 있지만 간단한 방법 중 하나는이를 수행 할 수있는 라이브러리를 사용하는 것입니다. 예를 들어, 사용할 수 있습니다 배 : mail_mime

나는이 분야의 전문가가 아니지만 내 컨텐츠 유형을 텍스트/html로 설정하는 것입니다. 이는 HTML 렌더링을 의미합니다 (이는 라인 브레이크가 공간으로 변환됨). HTML 요소를 사용하지 않는 경우 (표시되지 않음) 콘텐츠 유형을 텍스트/일반으로 설정하십시오.

앞에서 언급했듯이 텍스트/일반으로 설정하거나 라인 브레이크를 위해 HTML 브레이크를 추가하십시오.

$content = 'Name: '.$name."</br>\r\n";

라이센스 : CC-BY-SA ~와 함께 속성
제휴하지 않습니다 StackOverflow
scroll top