我在我的域名下创建了文件夹。文件夹-1中的电子邮件脚本正在递送,但文件夹-2中的脚本显示message =“email sent successfully”。但是这些电子邮件没有收到电子邮件地址。
我使用的是phpmailer
我尝试使用示例代码发送电子邮件。 当此sampleemail.php文件保存在 Folder1 中时,电子邮件会传递。但是当同一文件保存在 Folder2中时,会出现错误消息。
代码如下:
<?
$msg="";
if(isset($_POST['submit']))
{
$from_add = "name@my-web-site.com";
$to_add = "myemail@gmail.com"; //<-- put your yahoo/gmail email address here
$subject = "Test Subject";
$message = "Test Message";
$headers = "From: $from_add \r\n";
$headers .= "Reply-To: $from_add \r\n";
$headers .= "Return-Path: $from_add\r\n";
$headers .= "X-Mailer: PHP \r\n";
if(mail($to_add,$subject,$message,$headers))
{
$msg = "Mail sent OK";
}
else
{
$msg = "Error sending email!";
}
}
?>
和HTNL样本表如下:
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">
<html>
<head>
<title>Test form to email</title>
</head>
<body>
<?php echo $msg ?>
<p>
<form action='<?php echo htmlentities($_SERVER['PHP_SELF']); ?>' method='post'>
<input type='submit' name='submit' value='Submit'>
</form>
</p>
</body>
</html>
答案 0 :(得分:0)
查看你的代码,我发现你不是在使用“PHPMailer”,而是“PHP的邮件程序”。
关于未发送电子邮件和错误消息的问题,以下是一些常规提示:
如果您收到错误,请尝试以下操作:
$errLevel = error_reporting(E_ALL ^ E_NOTICE);
mail(...);
error_reporting($errLevel);
尝试使用其他投放方式(smpt,sendmail,...)
答案 1 :(得分:0)
我建议您使用PHPmailer,因为它具有您需要的功能。我不建议您使用您的方法,因为它需要更改localhost中的sendmail()函数。
例如:如果您使用xampp,则必须进入sendmail目录并转到sendmail.php以编辑SMTP到mail.google.com等。
请尝试本教程: http://codeforgeek.com/2014/11/phpmailer-ultimate-tutorial/
希望它可以帮助你。