我怎么能克服这个警告

时间:2016-10-19 10:41:20

标签: php email

警告:mail():无法连接到" localhost"的邮件服务器端口25,验证您的" SMTP"和" smtp_port"在php.ini中设置或在第9行的C:\ xampp \ htdocs \ learn \ mail2.php中使用ini_set() 失败的电子邮件

my code is 

`

$headers = 'From:<akhilgundu401@gmail.com>'."\r\n".
'Reply-To:akhilyagna1@gmail.com'."\r\n".'X-Mailer:PHP/'.PHPversion();

$res=mail($to,$subject,$message,$headers);
ini_set("SMTP","ssl://smtp.gmail.com");
if($res)
{
    echo 'email sent successfully';
   }
 else {   
echo 'failure email';
}
?>

1 个答案:

答案 0 :(得分:0)

您需要在计算机上设置邮件服务器才能使邮件功能正常工作。如果您使用的是Windows,则可以设置Pegasus邮件服务器。

其他选项包括使用包装类(如SwiftMailer或PHPMailer)并使用它们连接到另一个SMTP服务器,例如您的GMail帐户。

或试试这个

在C:\ xampp \ php \ php.ini中找到extension = php_openssl.dll并从该行的开头删除分号,使SSL为本地主机的gmail工作。

在php.ini文件中找到[mail function]并更改

SMTP = smtp.gmail.com

smtp_port = 587

sendmail_from = my-gmail-id@gmail.com

sendmail_path =&#34; \&#34; C:\ xampp \ sendmail \ sendmail.exe \&#34; -t&#34;

现在打开C:\ xampp \ sendmail \ sendmail.ini。使用以下代码替换sendmail.ini中的所有现有代码

[sendmail的] smtp_server = smtp.gmail.com

SMTP_PORT = 587

error_logfile = error.log中

debug_logfile =的debug.log

auth_username=my-gmail-id@gmail.com

AUTH_PASSWORD =我的Gmail的密码

force_sender=my-gmail-id@gmail.com

gmail邮件服务器需要openssl,因此您需要检查您的php安装是否具有openssl支持。看到这个使用phpinfo()函数在空白的php文件上运行此函数n搜索openssl,如果它在那里,那么在你使用mail函数的代码中,在发送邮件之前写下这些行ini_set("SMTP","ssl://smtp.gmail.com"); ini_set("smtp_port","465"); 它将设置所需的端口n smtp和
你必须先在谷歌邮件中激活IMAP!谷歌内部设置