从HTML发送邮件?

时间:2015-06-10 10:44:15

标签: php html email

我试图使用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'); 
?>

1 个答案:

答案 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