[英]After submitting email form, I want to stay on the same page and message like success to apear
提交电子邮件信息后,我希望保留在同一页面上,而不是将我重定向到新页面。
这是我的html代码:
<form method="post" action="index.php" id="formaa" accept-charset="UTF-8">
<input name="name" placeholder="Name" id="aa">
<input name="email" type="email" placeholder="E-mail" id="aa">
<textarea name="message" placeholder="Message"></textarea>
<input name="human" placeholder="2+2=" id="ab">
<input id="submit" name="submit" type="submit" value="Submit">
</form>
这是PHP代码:
<?php
$name = $_POST['name'];
$email = $_POST['email'];
$message = $_POST['message'];
$headers = 'From: PappuLighting';
$to = 'v.karageorgiev@pappu-lighting.com';
$subject = 'Hello';
$human = $_POST['human'];
$headers = "MIME-Version: 1.0" . "\r\n";
$headers .= "Content-type:text/html;charset=UTF-8" . "\r\n";
$body = "From: $name\n E-Mail: $email\n Message:\n $message";
if ($_POST['submit'] && $human == '4') {
if (mail ($to, $subject, $body, $headers)) {
echo '<p>Your message has been sent!</p>';
} else {
echo '<p>Something went wrong, go back and try again!</p>';
}
} else if ($_POST['submit'] && $human != '4') {
echo '<p>You answered the anti-spam question incorrectly!</p>';
}
?>
您可以通过使用一种使ajax简单的框架(如jQuery或AngularJS)来使用ajax调用。 在这种情况下,您应该在服务器端创建REST APi端点以发送电子邮件。
尝试这样==>将php和html代码放在同一文件中,然后将action=""
<?php
if(isset($_POST['submit'])){
$name = $_POST['name'];
$email = $_POST['email'];
$message = $_POST['message'];
$headers = 'From: PappuLighting';
$to = 'v.karageorgiev@pappu-lighting.com';
$subject = 'Hello';
$human = $_POST['human'];
$headers = "MIME-Version: 1.0" . "\r\n";
$headers .= "Content-type:text/html;charset=UTF-8" . "\r\n";
$body = "From: $name\n E-Mail: $email\n Message:\n $message";
if ($_POST['submit'] && $human == '4') {
if (mail ($to, $subject, $body, $headers)) {
$messageSuccess = '<p>Your message has been sent!</p>';
} else {
$messageerror = '<p>Something went wrong, go back and try again!</p>';
}
} else if ($_POST['submit'] && $human != '4') {
$messageerror = '<p>You answered the anti-spam question incorrectly!</p>';
}
}
?>
<?php
if(isset($messageSuccess))
echo $messageSuccess;
else if(isset($messageSuccess))
echo $messageerror;
?>
<form method="post" action="" id="formaa" accept-charset="UTF-8">
<input name="name" placeholder="Name" id="aa">
<input name="email" type="email" placeholder="E-mail" id="aa">
<textarea name="message" placeholder="Message"></textarea>
<input name="human" placeholder="2+2=" id="ab">
<input id="submit" name="submit" type="submit" value="Submit">
</form>
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.