2012-02-27 2 views
0

CakePHP에서 이메일을 보내려고하지만 성공하지 못했습니다. 나는 CakeEmail과이 코드를 가지고 노력하고있다 :CakePHP로 이메일을 보내면 CakeEmail과 SwiftMailer를 사용할 수 없습니다.

$email = new CakeEmail(); 
$email->from(array('[email protected]' => __('Recruitment Job App'))) 
     ->to('[email protected]') 
      ->subject(__('Recruitment Status Update')) 
      ->send(__('Dear, ReynierPM this is a testing email')); 

전자 메일이 전송되지 않기 때문에 작동하지 않는다. 나는 또한이 http://bakery.cakephp.org/articles/sky_l3ppard/2009/11/07/updated-swiftmailer-4-xx-component-with-attachments-and-plugins을 시도했지만이 경우에는 내가이 오류 얻을

class EmailConfig { 
    public $default = array(
    'transport' => 'Debug', 
    'host' => 'smtp.gmail.com', 
    'port' => 25, 
    'timeout' => 30, 
    'username' => '[email protected]', 
    'password' => 'secret_password', 
    'charset' => 'utf-8', 
    'headerCharset' => 'utf-8', 
); 
} 

:

Fatal error: Class 'testemailView' not found in /var/www/html/jobapp/app/Controller/Component/swift_mailer.php on line 245

내가 CakePHP는 2.0을 사용하고이 파일이 구성이 /app/Config/email.php .6 및 SwiftMailer 4.1.5, 도움이 필요하십니까? 환호와 감사의 말을 미리

+1

치명적인 오류가 나에게 분명한 것 같다 당신은 이런 일이 있어야합니다. –

+0

와우, 바보 같은, 공개 사이트에 암호를 게시하는 것 –

+0

나는 그걸 숨기지 만 어쨌든 테스트 계정이므로 해커가 간다. jajajaja – ReynierPM

답변

4

이메일을 사용하려면 중요한 일부분을 빠져 나가야합니다.

App::uses('CakeEmail', 'Network/Email'); 
$email = new CakeEmail('default'); 

이 그런 다음 email.php로의 설정에서, Gmail을위한 기본 구성은 다음과 같이 looke한다 :

public $default = array(
    'host' => 'ssl://smtp.gmail.com', 
    'port' => 465, 
    'timeout' => 30, 
    'username' => '[email protected]', 
    'password' => 'secret', 
    'transport' => 'Smtp' 
); 
+0

예, 맞습니다. SSL을 사용하지 않고 기본 SMTP 만 포트 25로 사용하고 싶지 않으면 어떻게해야합니까? smtp.gmail.com에 호스트를 변경하고 포트를 25로 변경하려고 시도하지만 다음과 같이 표시됩니다. Connection timed out 오류 : 내부 오류가 발생했습니다. 나는 직접 연결되어있다. – ReynierPM

+1

Gmail은 SSL 만 지원하기 때문입니다. 그들은 포트 25를 허용하지 않습니다. 그것이 당신이 오류를 얻는 이유입니다. –

+0

당신은 포인트를 얻었습니다.)하지만 한 가지 더 질문 PHP가 SSL을 지원하는지 또는 ssl : //smtp.gmail.com을 사용하기 위해 필요한 것이 있는지 어떻게 알 수 있습니까? – ReynierPM

관련 문제