如何从本地主机发送SMTP邮件 [英] how to send smtp mail from localhost

查看:315
本文介绍了如何从本地主机发送SMTP邮件的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!

问题描述

当尝试从本地主机发送电子邮件时,总是收到此消息。

I always get this message when trying to send email from my local host.

SMTP错误:无法连接到SMTP主机。无法发送信息。
Mailer错误:SMTP错误:无法连接到SMTP主机。

SMTP Error: Could not connect to SMTP host. Message could not be sent. Mailer Error: SMTP Error: Could not connect to SMTP host.

以下是我的代码:请帮助

below is my code: please help

<?php

// $email and $message are the data that is being
// posted to this page from our html contact form
$email = $_REQUEST['email'] ;
$message = $_REQUEST['message'] ;

// When we unzipped PHPMailer, it unzipped to
// public_html/PHPMailer_5.2.0
require("class.phpmailer.php");

$mail = new PHPMailer();

// set mailer to use SMTP
$mail->IsSMTP();

// As this email.php script lives on the same server as our email server
// we are setting the HOST to localhost
$mail->Host = "localhost";  // specify main and backup server

$mail->SMTPAuth = true;     // turn on SMTP authentication

// When sending email using PHPMailer, you need to send from a valid email address
// In this case, we setup a test email account with the following credentials:
// email: send_from_PHPMailer@bradm.inmotiontesting.com
// pass: password
$mail->Username = "project@reliable.com.pk";  // SMTP username
$mail->Password = "Nov112014"; // SMTP password

// $email is the user's email address the specified
// on our contact us page. We set this variable at
// the top of this page with:
// $email = $_REQUEST['email'] ;
$mail->From = $email;

// below we want to set the email address we will be sending our email to.
$mail->AddAddress("mani9418@gmail.com", "Usman Ali Siddiqui");

// set word wrap to 50 characters
$mail->WordWrap = 50;
// set email format to HTML
$mail->IsHTML(true);

$mail->Subject = "You have received feedback from your website Etutionhub!";

// $message is the user's message they typed in
// on our contact us page. We set this variable at
// the top of this page with:
// $message = $_REQUEST['message'] ;
$mail->Body    = $message;
$mail->AltBody = $message;

if(!$mail->Send())
{
   echo "Message could not be sent. <p>";
   echo "Mailer Error: " . $mail->ErrorInfo;
   exit;
}

echo "Message has been sent";
?>

推荐答案


  1. 打开 php.ini 。对于XAMPP,它位于 C:\XAMPP\php\php.ini 中。找出您使用的是WAMP还是LAMP服务器。

    注意:备份 php.ini 文件。

  1. Open the php.ini. For XAMPP, it is located in C:\XAMPP\php\php.ini. Find out if you are using WAMP or LAMP server.
    Note: Make a backup of php.ini file.

在php.ini文件中搜索[邮件功能]。

Search [mail function] in the php.ini file.

You can find like below.
[mail function]
; For Win32 only.
; http://php.net/smtp
SMTP = localhost
; http://php.net/smtp-port
smtp_port = 25

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

将localhost更改为ISP的smtp服务器名称。无需更改 smtp_port 。保留为25。将 sendmail_from postmaster @ localhost 更改为您的域电子邮件地址,该地址将用作发件人地址。

Change the localhost to the smtp server name of your ISP. No need to change the smtp_port. Leave it as 25. Change sendmail_from from postmaster@localhost to your domain email address which will be used as from address.

对我来说,它会变成这样。

So for me, it will become like this.

[mail function]
; For Win32 only.
SMTP = smtp.example.com
smtp_port = 25
; For Win32 only.
sendmail_from = info@example.com


  • 重新启动XAMPP或WAMP(apache

  • Restart the XAMPP or WAMP(apache server) so that changes will start working.

    现在尝试使用 mail()

    Now try to send the mail using the mail() function.

    mail("example@example.com","Success","Great, Localhost Mail works");
    


  • 邮件将发送到example @ example。 com从本地主机,主题行为成功,正文为 Great,Localhost Mail正常。

    Mail will be sent to example@example.com from the localhost with Subject line "Success" and body "Great, Localhost Mail works".

    这篇关于如何从本地主机发送SMTP邮件的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!

    查看全文
    登录 关闭
    扫码关注1秒登录
    发送“验证码”获取 | 15天全站免登陆