如何通过localhost发送邮件?

时间:2010-08-07 07:42:21

标签: php email gmail

<?php
$to = "rajesh.bakade65@gmail.com";
$subject = "HTML email";
$message = "
<html>
<head>
<title>HTML email</title>
</head>
<body>
<p>This email contains HTML Tags!</p>
<table>
<tr>
<th>Firstname</th>
<th>Lastname</th>
</tr>
<tr>
<td>John</td>
<td>Doe</td>
</tr>
</table>
</body>
</html>
";
// Always set content-type when sending HTML email
$headers = "MIME-Version: 1.0" . "\r\n";
$headers .= "Content-type:text/html;charset=iso-8859-1" . "\r\n";
// More headers
$headers .= 'From: <rajesh.bakade@chpl.tv>' . "\r\n";
//$headers .= 'Cc: myboss@example.com' . "\r\n";
mail($to,$subject,$message,$headers);
?>

我的php.ini文件是

[mail function]
; For Win32 only.
; http://php.net/smtp
SMTP = smtp.gmail.com
; http://php.net/smtp-port
smtp_port = 25

; For Win32 only.
; http://php.net/sendmail-from
;sendmail_from = postmaster@localhost

plz建议任何解决方案,以便我能够从localhost发送邮件

由于

3 个答案:

答案 0 :(得分:5)

使用功能丰富的SwiftMailer,您的设置应如下所示:

username:google email addres
password: your google password
smtp: smtp.gmail.com
port: 587

Here is how you can set your credentials and send the email.

require_once 'lib/swift_required.php';

//Create the Transport
$transport = Swift_SmtpTransport::newInstance('smtp.example.org', 25)
  ->setUsername('your username')
  ->setPassword('your password');

//Sendmail
$transport = Swift_SendmailTransport::newInstance('/usr/sbin/sendmail -bs');

//Create the Mailer using your created Transport
$mailer = Swift_Mailer::newInstance($transport);

//Create a message
$message = Swift_Message::newInstance('Wonderful Subject')
  ->setFrom(array('john@doe.com' => 'John Doe'))
  ->setTo(array('receiver@domain.org', 'other@domain.org' => 'A name'))
  ->setBody('Here is the message itself');

//Send the message
$result = $mailer->send($message);

答案 1 :(得分:0)

您似乎在使用smtp_port的错误端口号:在查看GMail settings时,您似乎需要端口587465。 (取决于您是否要使用TLS或SSL加密)

此外,我不知道PHP是否支持SSL和/或TLS。如果不是,您需要使用额外的PHP库才能连接到Google邮件服务器。

答案 2 :(得分:-2)

  1. require_once'lib / swift_required.php';

    //Create the Transport $transport =
    Swift_SmtpTransport::newInstance('smtp.example.org', 25)  
    ->setUsername('your username')   ->setPassword('your password');
    
    //Sendmail $transport =
    Swift_SendmailTransport::newInstance('/usr/sbin/sendmail -bs');
    
    //Create the Mailer using your created Transport $mailer =
    Swift_Mailer::newInstance($transport);
    
    //Create a message $message = Swift_Message::newInstance('Wonderful
    Subject')   ->setFrom(array('john@doe.com' => 'John Doe'))  
    ->setTo(array('receiver@domain.org', 'other@domain.org' => 'A name'))   ->setBody('Here is the message itself');
    
    //Send the message $result = $mailer->send($message);
    

    [1]:http://i.stack.imgur.com/t3Pbc.jpg