无法让xampp通过PHP发送电子邮件

时间:2011-06-02 20:35:25

标签: php gmail xampp

尝试让我的php脚本发送电子邮件时遇到大问题。在我的mac上使用这个脚本:

 <?php

require_once 'lib/swift_required.php';  
$image = file_get_contents("php://input");  
$attachment = Swift_Attachment::newInstance($image, 'submission.jpg', 'image/jpg'); 

$message = Swift_Message::newInstance()  
    /*Give the message a subject*/  
    ->setSubject('Your subject')  
    /*Set the from address with an associative array*/  
    ->setFrom(array('email'=>'Name'))  
    /*Set the to addresses with an associative array*/  
    ->setTo(array('email'))  
    /*Give it a body*/  
    ->setBody('Email'); 
    $message->attach($attachment);//<--When the attachment above is commented out, so is this  

    $transport = Swift_SendmailTransport::newInstance();  
    $mailer = Swift_Mailer::newInstance($transport);  
    $mailer->send($message); 

?>

电子邮件发送良好,附加图像,是伟大的。但是这不适用于Windows。我读过windows没有邮件服务器,因此花了最后几天与hmailserver,mercury,mailsender等进行斗争,试图收到一封电子邮件。 我从swiftmailer那里得到一个奇怪的错误:

Fatal error: Uncaught exception 'Swift_TransportException' with message 'Process could not be started [The system cannot find the path specified. ]' in C:\xampp\htdocs\lib\classes\Swift\Transport\StreamBuffer.php:268 Stack trace: #0 C:\xampp\htdocs\lib\classes\Swift\Transport\StreamBuffer.php(66): Swift_Transport_StreamBuffer->_establishProcessConnection() #1 C:\xampp\htdocs\lib\classes\Swift\Transport\AbstractSmtpTransport.php(101): Swift_Transport_StreamBuffer->initialize(Array) #2 C:\xampp\htdocs\lib\classes\Swift\Transport\SendmailTransport.php(61): Swift_Transport_AbstractSmtpTransport->start() #3 C:\xampp\htdocs\lib\classes\Swift\Mailer.php(74): Swift_Transport_SendmailTransport->start() #4 C:\xampp\htdocs\Mail.php(20): Swift_Mailer->send(Object(Swift_Message)) #5 {main} thrown in C:\xampp\htdocs\lib\classes\Swift\Transport\StreamBuffer.php on line 268

所以我尝试了一个基本的mail()脚本,但它不起作用。我使用了stunnel,但似乎没有用。我完全迷失了。一些方向,一个教程,你可以提供的任何东西,请大家!

1 个答案:

答案 0 :(得分:0)

在Linux系统上,邮件是通过使用Sendmail的mail()函数从PHP发送的。每当我在Windows上使用Swiftmailer时,我都使用SMTP,gmail允许。

http://www.swiftmailer.org/wikidocs/v3/smtpauth