我试图使用PHP功能从我的html网站发送邮件,但是当网站在线时没有收到邮件。这是正确的方式SMTP连接&剩下的代码?请帮我解决这个问题。 HTML代码(index.html)
<div class="done">
<div class="alert alert-success">
<button type="button" class="close" data-dismiss="alert">×</button>
Your message has been sent. Thank you!
</div>
</div>
<form method="post" action="contact.php" id="contactform">
<div class="form">
<input class="col-md-12" type="text" name="name" placeholder="Name">
<input class="col-md-12" type="text" name="email" placeholder="E-mail">
<textarea class="col-md-12" name="comment" rows="3" placeholder="Message"></textarea>
<input type="submit" id="submit" class="btn btn-default" value="Send">
</div>
</form>
PHP代码(contact.php)
<?php
ob_start();
$to = "username@gmail.com";
$subject = "Quick Message- Subject";
$Name=$_POST["name"];
$Email=$_POST["mail"];
$Message=$_POST["message"];
$message = "Name : ".$Name.PHP_EOL.
"Email Id : ".$Email.PHP_EOL.
"Message : ".$Message.PHP_EOL;
$from = "username@gmail.com";
$headers = "From : " . $from;
mail($to,$subject,$message,$headers);
header('Location: http://newhtmlwebsite.net');
?>
答案 0 :(得分:1)
您正在将PHPMailer与默认的php邮件程序混合使用。
首先:
来自$mail
的{{1}}变量您未能添加地址。这样做如下:
PHPMailer
您也未能将主题添加到$mail->addAddress('username@gamil.com', 'User Name');
对象
$mail
$mail->Subject = $subject;
$mail->Body = $Message;
来自
$mail
最后,请删除
行$mail->From = 'your-mail-addres@gmail.com';
该行本身就是使用简单的 $result=mail($to,$subject,$message,$header);
功能(不推荐)发送电子邮件
请记住在将$ _POST变量直接添加到邮件之前对其应用某种过滤
有关此次访问的详情,请访问:PHP Variable Filtering