문제

$to = "jijodasgupta@gmail.com";
$subject = "Hi!";
$body = "Hi,\n\nHow are you?";
if (mail($to, $subject, $body)) {
  echo("pMessage successfully sent!/p");
} else {
  echo("pMessage delivery failed.../p");
}

썼는 기본 php sendmail 는 코드 하지만 그것이 나에게 다음과 같은 오류가:

경고:이메일()[function.메일]:"sendmail_from"설정하지 않 in php.ini 나 사용자 정의에서":"헤더에 없 C:\xampp\htdocs\mail.php on line5 메시지 전달에 실패...

나는 변경`php.ini 파일에 넣어 sendmail_from=jijodasgupta@gmail.com 하지만 여전히 문제가 계속합니다.쓰 메일에 대한 스크립트 첫 시간입니다.

내가 뭔가 잘못하고 있는가?더 좋은 방법이 있을까요?

도움이 되었습니까?

해결책

추가 _headers (선택 사항)

이메일 헤더 끝에 삽입 할 문자열.

이것은 일반적으로 추가 헤더 (CC 및 BCC)를 추가하는 데 사용됩니다. 여러 추가 헤더를 CRLF ( r n)로 분리해야합니다.

참고 : 메일을 보낼 때 메일에는 헤더에서 A가 포함되어야합니다. 추가 _headers 매개 변수로 설정하거나 기본값을 php.ini로 설정할 수 있습니다. 이 작업에 실패하면 경고와 유사한 오류 메시지가 발생합니다. Mail () : "sendmail_from"Php.ini 또는 Custom에서 설정되지 않음 : "헤더 누락. From Header 세트는 Windows 아래로 반환되었습니다.

도움이되기를 바랍니다.

다른 팁

첫째 모든 확인,편집한 올바른 php.-ini 추가 phpinfo(); 스크립트 출력의 진단 정보의 위치를 포함하여 php.ini.당신은 또한 볼 수 있도록 구성"sendmail_from"value 습니다.

실패를 제공합에서 헤더로 표시 usoban

$hdrs="From: jijodasgupta@gmail.com";
mail($to, $subject, $body, $hdrs);

올바른 php.ini를 편집하고 변경 사항을 반영하지 않으면 서버가 시작될 때만 Php.ini 만로드하므로 웹 서비스를 다시 시작할 수 있습니다.

나는 같은 문제에 부딪쳐서 내 서버를 사용하고 있었기 때문에 결국 account@servername 헤더에 내 자신을 지정했지만 이메일 주소로

내가 찾은 답변은 시스템이 내가 지정한 이메일 주소를 사용하도록 강제로 5 번째 매개 변수를 메일 호출에 추가하는 것이 었습니다.

$from = 'fromemail@domain.com'
$xheaders = "From: " . $from . " <" . $from . ">\n"; 
$i = mail("$useremail","$subject","$content",$xheaders,'-f fromemail@domain.com'); 

php.ini에서 양식 주소를 설정하는 대신 USOBAN이 말한 것과 같은 헤더로 보내십시오.

이렇게하면 동일한 설정에서 다른 사이트를 호스팅 할 때 두통이 절약되고 다음에 헤더를 설정하는 것을 잊어 버립니다.

php mail () 함수는 많은 문제를 생성합니다. 마지막으로 서버에서 작업 할 때 이메일이 사용자의 스팸 폴더에 있음을 알 수 있습니다.

대신 PHP SMTP 라이브러리 중 하나를 사용하여 메일을 보내는 것이 좋습니다.

  • Phpmailer- 사실상 표준
  • http://swiftmailer.org/ -보다 현대적인 접근 방식이지만 더 작은 사용자 기반
라이센스 : CC-BY-SA ~와 함께 속성
제휴하지 않습니다 StackOverflow
scroll top