我正在尝试使用phpMailer通过电子邮件向用户发送确认消息.我的代码是这样的:
<?php
include("class.phpmailer.php");
include("class.smtp.php");
$mail = new PHPMailer();
$mail->IsSMTP(); // set mailer to use SMTP
$mail->Host = "ssl://smtp.gmail.com"; // specify main and backup server
$mail->Port = 465; // set the port to use
$mail->SMTPAuth = true; // turn on SMTP authentication
$mail->Username = "sender@gmail.com"; // your SMTP username or your gmail username
$mail->Password = "mypasswrord"; // your SMTP password or your gmail password
$from = "webmaster@example.com"; // Reply to this email
$to="receiver@yahoo.com"; // Recipients email ID
$name="Jersey Name"; // Recipient's …Run Code Online (Sandbox Code Playgroud) 我需要使用php脚本向我的网站用户发送邮件.我试过在php中使用邮件功能.
我的代码如下:
$to = "myweb@gmail.com";
$subject = "Test mail";
$message = "My message";
$from = "webp@gmail.com";
$headers = "From:" . $from;
mail($to,$subject,$message,$headers);
Run Code Online (Sandbox Code Playgroud)
当我尝试运行程序时,这就是我得到的:
Warning: mail(): Failed to connect to mailserver at "localhost" port 25, verify your "SMTP" and "smtp_port" setting in php.ini or use ini_set().
Run Code Online (Sandbox Code Playgroud)
请告诉我在$ from变量中包含哪些地址.我需要一个smtp服务器吗?如何使用localhost发送邮件?请告诉我在php.ini文件中要编辑的内容
我对这一切都很陌生..请帮帮我..
我知道之前已经问过这个问题并且我已经阅读了所有帖子,但我仍然无法找到解决方案.
我有一个安装了wamp的windows机器.当我尝试通过谷歌的SMTP服务器发送简单的电子邮件时,一切正常.但是,当我将相同的脚本复制到Ubuntu 12机器时,它给了我这个错误:
PHP Fatal error: Uncaught exception 'Swift_TransportException' with message 'Failed to authenticate on SMTP server with username "xxx@gmail.com" using 2 possible authenticators' in /home/TestMail/SwiftMail/lib/classes/Swift/Transport/Esmtp/AuthHandler.php:171
Stack trace:
/home/TestMail/SwiftMail/lib/classes/Swift/Transport/EsmtpTransport.php(289): Swift_Transport_Esmtp_AuthHandler->afterEhlo(Object(Swift_SmtpTransport))
/home/TestMail/SwiftMail/lib/classes/Swift/Transport/AbstractSmtpTransport.php(114): Swift_Transport_EsmtpTransport->_doHeloCommand()
/home/TestMail/SwiftMail/lib/classes/Swift/Mailer.php(76): Swift_Transport_AbstractSmtpTransport->start()
/home/TestMail/testmail.php(73): Swift_Mailer->send(Object(Swift_Message))
thrown in /home/TestMail/SwiftMail/lib/classes/Swift/Transport/Esmtp/AuthHandler.php on line 171
Run Code Online (Sandbox Code Playgroud)
这就是我初始化传输的方式:
$transport = Swift_SmtpTransport::newInstance('smtp.gmail.com', 465, 'ssl')
Run Code Online (Sandbox Code Playgroud)
我试图telnet到smtp.gmail.com端口465,它工作正常,所以它一定不是防火墙问题.
我用PHP启用了SSL.我尝试使用不同的邮件服务器发送带有和不带SSL的两个单独的邮件,一切都像魅力一样.这只是谷歌的邮件让我发疯.
这里欢迎任何想法.
我的整个PHP代码:
<?php
require_once 'SwiftMail/lib/swift_required.php';
// Create the Transport
$transport = Swift_SmtpTransport::newInstance('smtp.gmail.com', 465, 'ssl')
->setUsername('xxx@gmail.com')
->setPassword('xxx');
// Create the Mailer using your created Transport
$mailer = Swift_Mailer::newInstance($transport);
$htmlbody …Run Code Online (Sandbox Code Playgroud) 我无法连接 Gmail SMTP 服务器。
看:
$transport = Swift_SmtpTransport::newInstance()
->setHost('smtp.gmail.com')
->setPort(465)
->setEncryption('ssl')
->setUsername('email@gmail.com')
->setPassword('mypasss');
$mailer = Swift_Mailer::newInstance($transport);
$message = Swift_Message::newInstance('Contato via Site')
->setFrom(array($email => $de))
->setTo(array($destinatario => 'Agência Linka'))
->setBody($corpo_mensagem, 'text/html')
->setCharset('UTF-8');
$mailer->send($message);
Run Code Online (Sandbox Code Playgroud)
然后我得到了这个:
Fatal error: Uncaught exception 'Swift_TransportException' with message 'Connection could not be established with host smtp.gmail.com [ #0]' in ...
Run Code Online (Sandbox Code Playgroud)
任何人都经历过这种情况?