PHP代码没有通过电子邮件发送给我

时间:2014-03-11 00:50:11

标签: php html email

这是我的html表单代码

我创建了这个并且它与mailto函数一起运行良好,但问题是它只是客户端,我希望它在服务器端工作,以便它向我发送他们提供的电子邮件中的电子邮件

<form action="mailto.php" method="post">
<p>Title:<select>
     <option value="Mr">Mr</option>
     <option value="Mrs">Mrs</option>
     <option value="Miss">Miss</option>
     <option value="Dr">Dr</option>
</select></p>
     <p>First name: <input type="text" name="firstname"></p>
     <p>Last name: <input type="text" name="lastname"></p>
     <p>Steam name: <input type="text" name="steam name"></p>
     <p>Email: <input type="text" name="email"></p>
     <p>What will you bring to this clan? (250 charcater limit)</p>
     <p><textarea name="textbox" id="textbox" textarea maxlength="250"></textarea></p>
     <p><input type="submit" name="submit" value="Submit">
        <input type="reset" value="Reset"></p>
</form>

在我的php代码出现之前,我没有任何问题。

这是我的PHP代码

<?php 
if(isset($_POST['submit'])){
    $to = "someone@hotmail.com"; // this is your Email address
    $from = $_POST['email']; // this is the sender's Email address
    $firstname = $_POST['firstname'];
    $lastname = $_POST['lastname'];
    $subject = "Form submission";
    $message = $firstname . " " . $lastname . " What will you bring to this group?:" . "\n\n" . $_POST['textbox'];

    $headers = "From:" . $from;
    mail($to,$subject,$message,$headers);
    }
?>

请任何人帮助我。

1 个答案:

答案 0 :(得分:1)

编辑: 我最初建议在From:标题后添加一个空格,但是现在已经重新阅读了RFC本身,似乎空间会成为价值的一部分,所以我删除了这个建议。 "From:{$from}"优于"From: {$from}"

-

如果您使用的是Windows主机,则必须先在php.ini中提供SMTP连接详细信息,然后才能发送mail()的电子邮件。请参阅mail()#Notes

如果您使用的是Linux,则应在PHP错误日志文件中显示错误消息。您可以通过在服务器上的任何位置运行以下代码,然后在输出中搜索error_log来找到它的位置。

<?php
phpinfo();

一旦你知道正在生成的错误,我可以提供更多帮助。可能是电子邮件成功发送,当垃圾邮件到达另一端时,它会被垃圾邮件过滤器吃掉。