【发布时间】:2016-08-11 12:01:50
【问题描述】:
我的 wordpress 网站上有一个联系表格,但是当单击提交按钮时,我无法从表格中获取信息以发送到我的电子邮件地址。
单击提交按钮并发送电子邮件后,我希望在提交按钮下方显示消息已发送的确认信息/如果未发送则错误。注意:我将更新联系表单的 css 以容纳额外的文本。
这是我的表单代码:
<form action="secure_email.php" method="post" id="contact-form-content">
<h5>You have had a look, so let's get cracking. Email me at me@myemail.com or use this nifty thing.</h5><br></br>
<legend>Contact Form</legend>
<input type="text" placeholder="Full Name" name="full-name" id="full-name" required;><br></br>
<input type="text" placeholder="Email" name="email" id="email" required;><br></br>
<textarea placeholder="Message" name="message" id="message" rows="100" cols="100" wrap="hard" required;></textarea><br></br>
<button type="submit" name="submit" value="submit">Send</button>
</form>
这是secure_email.php文件:
<?php
if(isset($_POST['submit'])){
$to = "me@myemail.com"; // this is your Email address
$email = $_POST['email']; // this is the sender's Email address
$full-name = $_POST['full-name'];
$subject = "Form submission";
$message = $full-name . " " . $email . " wrote the following:" . "\n\n" . $_POST['message'];
$headers = 'MIME-Version: 1.0' . "\r\n";
$headers .= 'Content-type: text/html; charset=iso-8859-1' . "\r\n";
mail($to, $subject, $message, $headers);
if (isset($_POST['submit']))
{
if (mail($to, $subject, $message, $headers))
echo "Thank you for contacting me!";
}
else
{
echo '<p>Something went wrong, go back and try again!</p>';
}
}
?>
只是为了更新所有这些是工作代码,其中联系表格详细信息被发送到我给定的电子邮件,确认消息出现在联系表格中并滚动回联系表格以查看确认消息
<div id="contact-form">
<form action="#contact" method="post" id="contact-form-content">
<h5>You have had a look, so let's get cracking. Email me at me@myemail.com or use this nifty thing.</h5><br></br>
<legend>Contact Form</legend>
<input type="text" placeholder="Full Name" name="fullname" id="fullname" required;><br></br>
<input type="text" placeholder="Email" name="email" id="email" required;><br></br>
<textarea placeholder="Message" name="message" id="message" rows="100" cols="100" wrap="hard" required;></textarea><br></br>
<button type="submit" name="submit" value="submit">Send</button>
<?php
if(isset($_POST['submit'])){
$to = "me@myemail.com"; // this is your Email address
$email = $_POST['email']; // this is the sender's Email address
$fullname = $_POST['fullname'];
$subject = "Form submission";
$message = $fullname . " " . $email . " wrote the following:" . "\n\n" . $_POST['message'];
$headers = 'MIME-Version: 1.0' . "\r\n";
$headers .= 'Content-type: text/html; charset=iso-8859-1' . "\r\n";
if (mail($to, $subject, $message, $headers)){
echo "Thank you for contacting me!";
}
else
{
echo '<p>Something went wrong, go back and try again!</p>';
}
}
?>
</form>
</div>
</div>
【问题讨论】:
-
我没有看到发送电子邮件的
wp_mail()或mail()。 -
我也看不到您将响应发送回浏览器的位置,因此它将向用户显示
mail sent消息。 -
我没有创建
mail sent响应,因为我不知道从哪里开始。我看到的所有示例都在另一个 html 页面上显示响应,这不是我想要的。我没有使用wp_mail(),因为我没有使用 wp 电子邮件工具/插件?我想从头开始创建自己的表单和代码。希望这是有道理的? -
您仍然没有发送电子邮件的代码。如果您实际上不尝试发送邮件,您希望如何发送邮件?
-
我要查看什么样的代码?我在网上看到的所有示例都使用表单代码,然后使用类似于我的secure_email.php 的代码。我没有看到任何额外的东西。任何指针都会很棒。
标签: javascript php wordpress forms email