2014-05-10 3 views
-2

내 메일 기능이 작동하지 않습니다. 내 메일 기능은 다음과 같습니다.메일 기능이 PHP에서 작동하지 않습니다.

function sendmail($from,$to,$sub,$msg) 
{ 

    $subject=$sub; 
    $message=$msg; 
    $headers = "MIME-Version: 1.0" . "\r\n"; 
    $headers .= "Content-type:text/html;charset=iso-8859-1" . "\r\n"; 
    $headers .= "From: <'.$from.'>" . "\r\n"; 
    mail($to,$subject,$message,$headers); 
} 

이 프로젝트는 일부 다른 프로젝트에서는 제대로 작동하지만 내 새 프로젝트에서는 작동하지 않습니다.

+0

무슨 오류가 발생하고 있습니까? –

+1

"From : <'.$from.'>"이 표시되어 $ headers의 마지막 행이 의도적으로 완료 되었습니까? "\ r \ n"; – Vagabond

답변

0
I finally solved the issue. The problem was I had given my gmail id as admin id (i.e, from address) now i changed it to a mail id from the domain name(say, if the domain name is www.abc.com I gave id as [email protected]) and it works. 

연락 그리고 지금 내가 알고 온 Gmail이나 다른 메일 ID를 제공하는 것은 일부 서버에서는 경우에 따라 작동하지만 모든 서버에서 작동하지는 않습니다. 따라서 도메인 이름 ([email protected])에 메일 ID를 사용하면이 문제가 해결됩니다. 일부 서버에서는 gmail id가 여전히 작동하지만 메일 본문에 오류 메시지가 표시되거나 스팸 메일이되므로 [email protected]과 같은 도메인 이름에서 파생 된 메일 ID를 사용하는 것이 좋습니다.

감사합니다 ....

0

서버에서 작동하지 않는 메일 일 수 있습니다. 기본 메일 기능을 확인하고 루트에서 테스트 메일을 업로드하십시오.

testmail.php

<?php 
$msg = "This is test mail"; 
mail("[email protected]","My subject",$msg); 
?> 

하는 메일은, sendmailphpmailer 같은 인증 메일로 시도 작동하지 않는 경우.

0

PHP inbuilt mail() 함수가 에서 작동하지 않습니다. url localhost 또는 smtp server를 지원하지 않는 서버. 이 프로젝트를 로컬에서 실행하면이 메일 기능이 작동하지 않습니다. 당신은 서버에 그것을 업로드하고 시도해야합니다, 그것은 작동합니다!

당신이 서버에서이 프로젝트를 실행하고 메일 후 실행되지 않는 경우 가능성은 다음과 같습니다

1) 당신은 PHP가 아니라 SMTP를 지원하는 Windows 서버에서 호스팅하고 있습니다.

2) 서버가 Linux 인 경우 서버가 보내는 메일을 사용하지 않도록 설정했을 수 있습니다. PLS .. 한번 시도해 ... 난 당신이 등 Gmail은, 핫메일 같은 외부 SMTP 서버를 통해 메일을 보냅니다 PHPMailer [https://github.com/Synchro/PHPMailer]를 사용하는 것이 좋습니다 서버

관련 문제