PHP主题电子邮件似乎打破了接收联系表
我写了一个联系表,当我输入'姓名,电子邮件和消息'我收到电子邮件。但是,当我输入主题时,它会将我带到“谢谢”页面,但我似乎从未收到该电子邮件。PHP主题电子邮件似乎打破了接收联系表
我试过在PHP脚本中更改不同的变量,但这不起作用。我无法确定阻止电子邮件发送的因素。见下面的代码。
<?php
error_reporting(-1);
ini_set('display_errors', 'On');
set_error_handler("var_dump");
if(isset($_POST['submit'])){
$first_name = $_POST['first_name'];
$last_name = $_POST['last_name'];
$email = $_POST['email'];
$subject = $_POST['subject'];
$message = $_POST['message'];
$formcontent = "From: $first_name $last_name \n \n Message: $message";
$to = '[email protected]';
$mailheader = "From: $email \r\n";
mail($to, $subject, $formcontent, $mailheader) or die("Error!");
echo "Thank You! Your kind message has been recieved!";
}
?>
<form method="POST" action="mail.php">
<div class="form-inline">
<label for="Firstname">Name</label>
<input type="text" class="form-control"
id="Firstname" name="first_name" placeholder="First Name">
<input type="text" class="form-control"
id="Lastname" name="last_name" placeholder="Last Name">
</div>
<div class="form-group">
<label for="Email">E-mail</label>
<input type="email" class="form-control"
id="Email" name="email" placeholder="Email Address">
</div>
<div class="form-group">
<label for="Subject">Subject</label>
<input type="text" class="form-control"
id="Subject" name="subject" placeholder="Let me know what it's about">
</div>
<div class="form-group">
<label for="Message">Message
</label>
<textarea class="form-control"
id="Message" name="message" rows="6" placeholder="Send me something awesome!"></textarea>
</div>
<button type="submit" name="submit" class="btn btn-default">Submit
</button>
</form>
我看不出什么毛病,你发布的内容将被张贴到PHP阻止主题行的代码。换句话说,仅仅基于你发布的代码,PHP应该能够访问
$_POST['subject'];
但是为了以防万一,请尝试更改提交按钮的输入,像这样
`<input type="submit" name="submit" value="Submit">`
其次,即使填写表格的人员没有提供,也可能在将来总是有一个主题行。 (这真的可以帮助你理清你的邮件)。我会使用PHP速记赋值运算符。它看起来像这样
$subject = isset($_POST['subject']) ? $_POST['subject'] : "Default Subject Line";
这是完全一样的东西做这个
if(isset($_POST['subject'])){
$subject = $_POST['subject'];
} else {
$subject = 'Default Subject Line';
}
嗨,大家好!因此,我一直在努力研究一些建议和改变事情,有时甚至在我添加带有主题/消息的名字和姓氏时,我也没有收到电子邮件。非常困惑的人现在!显然不会放弃,但你认为它可能与服务器有关吗?如果您想查看,我的网站是www.benjackcleary.com。感谢您的全力帮助 – clearyb123
难道您的电子邮件客户端正在向垃圾邮件发送邮件,因为主题行是空白的? (我只是填写表格,无论有没有主题行,让我知道它是怎么回事) –
所以它的工作!!!!我想,在电子邮件玩了一段时间后,终于通过了。这可能是两件事刷新网站上的缓存并将提交按钮更改为输入。总之,发送电子邮件的速度仍然很慢,但这可能与服务器有关。我将用100封电子邮件进行测试以确保。
真棒。我很高兴听到它。不要忘记接受答案;-) –
'error_reporting(〜1);'在那里做什么代字号? –
OOPS!这意味着error_reporting(-1)提出的错误是“未定义的索引:主题”,但我已经在php和html中声明了它。 @ Fred-ii- – clearyb123
嗯......这可能是因为你的输入被破坏/在不同的行上” - 尝试把它放在一行;我以前见过这种情况。你的'