2013-02-12 2 views
0

Я использую Swiftmailer для отправки писем в моем приложении на основе Yii, и он отлично работает, поэтому никаких проблем с оболочкой расширения Swiftmailer нет. Но теперь я хочу использовать транспорт SMPT для аутентификации пользователей в приложении против почтового сервера. Код, который я использую:Аутентификация с использованием SMTP-транспорта с использованием Swiftmailer

$SM = Yii::app()->swiftMailer; 

$mailHost = 'XXX'; 
$mailPort = XXX; 

// New transport 
$transport = $SM->smtpTransport($mailHost, $mailPort); 

$transport->setUsername($username); 
$transport->setPassword($password); 
$transport->start(); 

if($transport->isStarted()){ 
    // authenticated;  
}else{ 
    // error; 
} 

$transport->stop(); 

Это не работает. Когда я устанавливаю реальные учетные данные для входа в систему, вы моментально входите в систему. Но когда я печатаю неправильные, он проводит некоторое время, но, наконец, он также входит в систему. Я не знаю, почему это происходит, потому что при использовании реальных учетных данных Swiftmailer может отправлять электронные письма. Я использую правильные функции API? Я делаю что-то неправильно?

ответ

0

Глядя на the source, когда вы звоните start(), для начала всегда установлено значение Истина.

Я не знаком с switfmailer, но похоже, что вы хотите, чтобы проверить результаты Authenticate()

+0

Да! Является ли authenticate() методом переноса класса? Я этого не видел. Дай мне проверить. –

Смежные вопросы