2013-03-18 2 views
0

PHP를 통해 메일을 보내는 데 문제가 있습니다.PHP를 통한 이메일 전송 문제 - 구성 문제

// Set up parameters 
$to = "[email protected]"; 
$subject = "Title"; 
$message = "Hello world"; 

// Send email 
$mail = mail($to,$subject,$message); 

// Inform the user 
if($mail == true) 
    echo "send mail"; 
else 
    echo "dont send"; 

은 내가 어떻게해야합니까하고 항상 "보내 그나마 다음 코드가 포함 된 이메일을 보내

SMTP = xx.xxx.xxx.xx 
smtp_port = 25 

그리고 PHP에 있어요 : 나는 이미 php.ini의 SMTP에서 설정 한 "나는 이유를 모른다. 아무도 나 좀 도와 줄 수 없어? 그것은 당신의 경우에 작동하는 경우

$from = "who"; 
$to = "to"; 
$subject = "subject"; 
$host = "ssl://smtp.gmail.com"; 
$port = 465; 
$username = "yourusername"; 
$password = "yourpass"; 

$headers = array ('From' => $from, 'To' => $to, 'Subject' => $subject); 
$smtp = Mail::factory('smtp',array ('host' => $host, 
'auth' => true, 
'port' => $port, 
'username' => $username, 
'password' => $password)); 

$mail = $smtp->send($to, $headers, $body); 

것은 나에게 알려주기 :

+0

SMTP 서버가 올바르게 구성 되었습니까? 당신의 개발 기계에 노력하고 있습니까? 또는 프로덕션 서버? –

+0

당신이 설정 한 SMTP .. ?? Gmail ??? 그렇다면 PORT는'587'이어야하고'ssl' 대신'tls'를 사용해야합니다. –

+0

@Ummar 예, SMTP가 맞습니다. SMTP는 다른 컴퓨터에 있지만 PHP와 Apache가있는 컴퓨터에는 없습니다. 나는 php.ini를 수정 한 후에 만 ​​아파치를 재시작했다. 서버를 다시 시작해야합니까? – UZUMAKI

답변

0

나는 성공적으로 다음 코드를 사용하여 GMAIL을 통해 PHP에서 이메일을 보냈습니다.

+0

UZUMAKI는 Gmail이 아니라고 썼습니다. – mkjasinski

+0

@mkjasinski 오류 500 인터넷 서버 줘. 내 전자 메일을 ([email protected]), 사용자 이름 (및 내 전자 메일)에 넣고 암호는 올바른 전자 메일에 액세스하기위한 암호입니까? 시체는 무엇입니까? – UZUMAKI

+0

@UZUMAKI'Mail' 클래스가'PHP'의 일부가 아니기 때문에. 그것은 외부 라이브러리 여야합니다 [swiftmailer] (http://swiftmailer.org/), 쉽고 빠른 라이브러리를 사용하십시오. – mkjasinski