發送郵件實現不了
?if?($res){ ????????//發送郵件,以QQ郵箱為例 ????????//配置郵件服務器,得到傳輸對象 ????????$transport=Swift_SmtpTransport::newInstance('smtp.qq.com',465);//25是默認端口號 ????????//設置登錄帳號和密碼 ????????$transport->setUsername('[email protected]');//發送方郵箱 ????????$transport->setPassword($emailPassword); ????????//得到發送郵件對象Swift_Mailer對象 ????????$mailer=Swift_Mailer::newInstance($transport); ????????//得到郵件信息對象 ????????$message=Swift_Message::newInstance(); ????????//設置管理員的信息 ????????$message->setFrom(array('[email protected]'=>'Mogu')); ????????//將郵件發給誰 ????????$message->setTo(array($email=>'imooc')); ????????…… ????????try?{ ????????????if?($mailer->send($message)){ ????????????????echo?"恭喜您{$username}注冊成功,請到郵箱激活之后登錄"; ????????????????echo?'3秒鐘后跳轉到登錄頁面'; ????????????????echo?'<meta?http-equiv="refresh"?content="3;url=index.php#tologin"/>'; ????????????}else{ ????????????????$PdoMySql->delete($table,'id='.$lastInsertId); ????????????????echo?'注冊失敗,請重新注冊'; ????????????????echo?'3秒鐘后跳轉到注冊頁面'; ????????????????echo?'<meta?http-equiv="refresh"?content="3;url=index.php#toregister"/>'; ????????????} ????????}?catch?(Swift_ConnectionException?$e)?{//這里是警告 ????????????echo?'郵件發送錯誤'.$e->getMessage(); ????????}
錯誤是:Fatal error: ?Uncaught Swift_TransportException: Connection to smtp.qq.com:465 Timed Out in F:\xampp\htdocs\practise\pdoEx\app\swiftmailer-master\lib\classes\Swift\Transport\AbstractSmtpTransport.php:407 Stack trace: #0 F:\xampp\htdocs\practise\pdoEx\app\swiftmailer-master\lib\classes\Swift\Transport\AbstractSmtpTransport.php(291): Swift_Transport_AbstractSmtpTransport->_getFullResponse(0) #1 F:\xampp\htdocs\practise\pdoEx\app\swiftmailer-master\lib\classes\Swift\Transport\AbstractSmtpTransport.php(119): Swift_Transport_AbstractSmtpTransport->_readGreeting() #2 F:\xampp\htdocs\practise\pdoEx\app\swiftmailer-master\lib\classes\Swift\Mailer.php(80): Swift_Transport_AbstractSmtpTransport->start() #3 F:\xampp\htdocs\practise\pdoEx\app\doAction.php(54): Swift_Mailer->send(Object(Swift_Message)) #4 {main} ?thrown in F:\xampp\htdocs\practise\pdoEx\app\swiftmailer-master\lib\classes\Swift\Transport\AbstractSmtpTransport.php on line 407
2016-12-04
在php配置中開啟php_openssl配置
$transport=Swift_SmtpTransport::newInstance('smtp.qq.com',465,'ssl');//25是默認端口號
$transport->setPassword($emailPassword);
$emailPassword不是你的qq密碼,是開啟qq郵箱smtp/pop3服務時候的配置碼