2014-04-01 2 views
0

사용자가 이메일 주소를 입력해야하는 내 웹 사이트에 양식 페이지가 있습니다. 이메일을 보내 자마자 이메일이 전송됩니다. 나는 mail() 함수를 사용했지만 이메일은 통과하지 못했다. 이것은 원격 서버에 있습니다. 내가 뭔가를 놓치고 있니? 아래는 내가 사용하고있는 PHP 코드이다.mail() 함수를 사용하여 이메일을 보내지 않음

<?php 
$to  = '[email protected]'; 
$subject = 'Demo mail'; 
$message = 'This is a demo mail. Please reply to make sure the mail communication is okay.'; 
$headers = 'From: [email protected]' . "\r\n" . 
    'Reply-To: [email protected]' . "\r\n" . 
    'X-Mailer: PHP/' . phpversion(); 
if (mail($to, $subject, $message, $headers)) { 
    echo("<p>Email successfully sent!</p>"); 
    } else { 
    echo("<p>Email delivery failed</p>"); 
    } 
?> 

출력 결과가 이메일 전송에 실패했습니다! 내가 이것과 별개로해야 할 일은 무엇입니까? 미리 감사드립니다.

+0

로컬 호스트에서이 기능을 사용하고 계십니까? – sunny

+0

아마도 [로컬 메일 보내기] (http://stackoverflow.com/questions/21149535/send-mail-from-local-apache-server) – Debflav

+0

@Sudhir mail() 함수가 작동하지 않습니다 ... 그래서 메일을 보내지 않고 있습니다. – Phantom

답변

0

mail() 기능은 프로그램이 실행되고있는 서버의 전자 메일 구성에 의존합니다. 서버 전자 메일 구성을 살펴 보거나 라이브러리를 사용하여 Gmail 또는 전자 메일 서버와 같은 외부 SMTP 서비스에 연결해야합니다. "SMTP 연결을위한

http://swiftmailer.org/

0

수표의 php.ini 설정 파일 또는 ("SMTP "를 위해서는 ini_set 추가 IP_ADDRESS을 : 나는 그것을 철저하게 테스트 및 좋은 뒤에 커뮤니티를 가지고있어, 잘 알려져 스위프트 이메일 라이브러리를 추천합니다 "); 스크립트에서.

스크립트를 오류 처리기로 랩핑하여 SMTP 연결을 디버그 할 수도 있습니다.

관련 문제