Javascript 显示一个「;“谢谢你”;提交联系人表单后的消息
我的网站上有一份工作联系表。“提交”按钮将导致一个.php文件,该文件正在发送电子邮件(用户未看到此步骤),并再次将用户重定向到联系人表单 我想在点击submit按钮后在屏幕中央做一条简单的消息。类似于“感谢您发送申请” 我试图在php文件中设置一个变量Javascript 显示一个「;“谢谢你”;提交联系人表单后的消息,javascript,popup,message,contact-form,Javascript,Popup,Message,Contact Form,我的网站上有一份工作联系表。“提交”按钮将导致一个.php文件,该文件正在发送电子邮件(用户未看到此步骤),并再次将用户重定向到联系人表单 我想在点击submit按钮后在屏幕中央做一条简单的消息。类似于“感谢您发送申请” 我试图在php文件中设置一个变量 $mailSent = 1; 然后在脚本中捕捉它 var mailSent = "<?php echo $mailSent; ?>"; 我想问你对怎么做有什么想法。我希望消息看起来像引导模式 这是我的联系方式
$mailSent = 1;
然后在脚本中捕捉它
var mailSent = "<?php echo $mailSent; ?>";
我想问你对怎么做有什么想法。我希望消息看起来像引导模式
这是我的联系方式:
<div class="contact-form-container">
<div class="contact-form">
<form action="contact-form-handler.php" method="POST">
<h1 class="lang" key="contact-form" style="margin: 0 auto; font-size: 22px; font-family: Open Sans; color: #ff4800; margin-bottom: 10px; padding-bottom: 4px; font-weight: 100; width: 100%; text-align: center;">Formularz kontaktowy</h1>
<label class="lang" key="contact-form-name" for=""></label>
<input id="name" class="contact-form-content" type="text" name="name" required>
<label class="lang" key="contact-form-email" for=""></label>
<input id="email" class="contact-form-content" type="email" name="email" required>
<label class="lang" key="contact-form-topic" for=""></label>
<input id="topic" class="contact-form-content" type="text" name="topic" required>
<label class="lang" key="contact-form-text" for=""></label>
<textarea id="message" name="message" style="line-height:16px; font-size: 14px; font-family: calibri;" class="contact-form-content" cols="" rows="10"></textarea>
<button class="contact-form-content-submit" name="submit" type="submit"><p class="lang" key="contact-form-send" style="margin: 0; padding: 0;">Wyślij</p><img id ="Contact_icon_white" src="img/Contact_icon_white.png" alt="White contact icon"></button>
</form>
<div class="contact-form-callnow" style="display: flex; align-items: center; justify-content: center; margin: 0; padding: 0;">
<p class="lang" key="callnow" id="contact-form-callnow" style="font-family: Open Sans; margin: 0; padding: 14px 0px 4px 0px;">Zadzwoń teraz i umów przeprowadzkę!</p>
</div>
<div style="display: flex; align-items: center; justify-content: center; margin: 0; padding: 0;">
<a style="margin: 0; padding: 0;" href="tel:+48732739751"><img src="img/Phone_icon_green.png" alt="Phone icon" style="height: 28px; padding-right: 10px"></a>
<a style="margin: 0; padding: 0;" href="tel:+48732739751"><p style="font-family: Open Sans; margin: 0; padding: 4px 0px 10px 0px; font-size: 20px;">732 739 751</p></a>
</div>
</div>
</div>
康塔克托维公式
Wyślij
Zadzowêteraz i umów przeprowadzkę
这是我的php联系人表单处理程序
<?php
if(isset($_POST['submit'])) {
$name = $_POST['name'];
$visitor_email = $_POST['email'];
$topic = $_POST['topic'];
$message = $_POST['message'];
$to = "xyz@xyz.pl";
$subject = "Tu ".$name.". Wiadomość do xyz";
$headers = "From: ".$visitor_email;
$txt = "\nNowa wiadomość od: ".$name."\n\n\nTemat:\n".$topic."\n\n\nWiadomość:\n".$message;
mail($to, $subject, $txt, $headers);
header ('Location: contact.php');
} else {
header ('location: index.php');
}
您正在尝试添加已解析的php代码。PHP代码首先被解析为HTML代码,然后将PHP代码再次添加到Javascript代码中
添加以下内容:
$mailSent = false;
如果邮件发送成功,请将该变量切换为true
。然后:
<?php
if($mailSent === true) {
?>
<div class="success"></div>
<?php
}
?>
编辑:尝试以下操作:
<?php
$mailSent = false;
if(isset($_POST['submit'])) {
$name = $_POST['name'];
$visitor_email = $_POST['email'];
$topic = $_POST['topic'];
$message = $_POST['message'];
$to = "marcincelmer95@gmail.com";
$subject = "Tu ".$name.". Wiadomość do poznanprzeprowadzki.pl";
$headers = "From: ".$visitor_email;
$txt = "\nNowa wiadomość od: ".$name."\n\n\nTemat:\n".$topic."\n\n\nWiadomość:\n".$message;
mail($to, $subject, $txt, $headers);
$mailSent = true;
}
?>
<?php
if ($mailSent === true) {
?>
<div class="success">Mail is succesfully sent.</div>
<?php
}
?>
<div class="contact-form-container">
<div class="contact-form">
<form action="contact.php" method="POST">
<h1 class="lang" key="contact-form" style="margin: 0 auto; font-size: 22px; font-family: Open Sans; color: #ff4800; margin-bottom: 10px; padding-bottom: 4px; font-weight: 100; width: 100%; text-align: center;">Formularz kontaktowy</h1>
<label class="lang" key="contact-form-name" for=""></label>
<input id="name" class="contact-form-content" type="text" name="name" required>
<label class="lang" key="contact-form-email" for=""></label>
<input id="email" class="contact-form-content" type="email" name="email" required>
<label class="lang" key="contact-form-topic" for=""></label>
<input id="topic" class="contact-form-content" type="text" name="topic" required>
<label class="lang" key="contact-form-text" for=""></label>
<textarea id="message" name="message" style="line-height:16px; font-size: 14px; font-family: calibri;" class="contact-form-content" cols="" rows="10"></textarea>
<button class="contact-form-content-submit" name="submit" type="submit"><p class="lang" key="contact-form-send" style="margin: 0; padding: 0;">Wyślij</p><img id ="Contact_icon_white" src="img/Contact_icon_white.png" alt="White contact icon"></button>
</form>
<div class="contact-form-callnow" style="display: flex; align-items: center; justify-content: center; margin: 0; padding: 0;">
<p class="lang" key="callnow" id="contact-form-callnow" style="font-family: Open Sans; margin: 0; padding: 14px 0px 4px 0px;">Zadzwoń teraz i umów przeprowadzkę!</p>
</div>
<div style="display: flex; align-items: center; justify-content: center; margin: 0; padding: 0;">
<a style="margin: 0; padding: 0;" href="tel:+48732739751"><img src="img/Phone_icon_green.png" alt="Phone icon" style="height: 28px; padding-right: 10px"></a>
<a style="margin: 0; padding: 0;" href="tel:+48732739751"><p style="font-family: Open Sans; margin: 0; padding: 4px 0px 10px 0px; font-size: 20px;">732 739 751</p></a>
</div>
</div>
</div>
邮件已成功发送。
康塔克托维公式
Wyślij
Zadzowêteraz i umów przeprowadzkę
现在看起来是这样的:
<?php
$mailSent = 0;
echo $mailSent;
if ($mailSent === 1) {
echo "<script>
function myFunction() {
document.querySelector('.modal-background').style.display = 'flex';
};
</script>";
}
else if ($mailSent === 0) {
if(isset($_POST['submit'])) {
$name = $_POST['name'];
$visitor_email = $_POST['email'];
$topic = $_POST['topic'];
$message = $_POST['message'];
$to = "marcincelmer95@gmail.com";
$subject = "Tu ".$name.". Wiadomość do poznanprzeprowadzki.pl";
$headers = "From: ".$visitor_email;
$txt = "\nNowa wiadomość od: ".$name."\n\n\nTemat:\n".$topic."\n\n\nWiadomość:\n".$message;
mail($to, $subject, $txt, $headers);
$mailSent = 1;
}
}
else {
}
“我得到了未定义的错误”。。。来自代码的哪个特定部分和哪个变量?在联系人表单处理程序中,就在headr('Location:contact.php')之前;行。好的,但这并没有说具体什么是未定义的。实际的信息告诉你什么?似乎您在这里遇到了多个问题,我在contact.php文件中得到了“Undefined variable:mailssent”。当我尝试按您的方式执行时,什么都没有发生。它只是发送一封电子邮件并将其发送回contact.php。也许我得写点什么?现在我尝试在联系人表单的提交按钮上执行onclick函数。我提交表格后,“谢谢”信息出现,然后页面悲伤地刷新。。。这是因为在css中,我的消息有display:none,在onclick函数之后,它的display:flex表示一个moment。如果表单位于contact.php中,则操作也会指向contact.php。然后检查您的请求是否为post并且设置了正确的post密钥,您将在同一contact.php中显示它。您的“标题位置”是不必要的。不知怎的,我觉得你没有使用MVC系统。我说得对吗?因为你的项目让人觉得很不合拍。请给我更多关于你的项目的抽象信息,这样我可以帮助你更多。我没有使用MVC,老实说,我不知道那是什么。。。所以我必须在contact.php中发布我的php邮件程序代码,并删除之前发送邮件的contact-form-handler.php文件?这很有道理,我稍后会尝试,如果我再次失败,我会尝试更具体地展示我的代码:)当我使用PHP时,我使用Laravel作为MVC框架。强烈推荐。我没有关于普通PHP的详细信息,但我认为,当您重定向到另一个页面时,您将丢失所有post请求数据。这就是为什么您的post数据变得未定义。与其这样,不如学习如何使用像Laravel这样的MVC框架。如果没有像MVC这样的模式,你就不会去任何地方。如果你有问题尽管问。嘿,Burak,我已经在上面发布了我的代码。如果它可以帮助您,这是我的网站的url:
<?php
$mailSent = 0;
echo $mailSent;
if ($mailSent === 1) {
echo "<script>
function myFunction() {
document.querySelector('.modal-background').style.display = 'flex';
};
</script>";
}
else if ($mailSent === 0) {
if(isset($_POST['submit'])) {
$name = $_POST['name'];
$visitor_email = $_POST['email'];
$topic = $_POST['topic'];
$message = $_POST['message'];
$to = "marcincelmer95@gmail.com";
$subject = "Tu ".$name.". Wiadomość do poznanprzeprowadzki.pl";
$headers = "From: ".$visitor_email;
$txt = "\nNowa wiadomość od: ".$name."\n\n\nTemat:\n".$topic."\n\n\nWiadomość:\n".$message;
mail($to, $subject, $txt, $headers);
$mailSent = 1;
}
}
else {
}
<div class="contact-form-container">
<div class="contact-form">
<form action="contact.php" method="POST">
<h1 class="lang" key="contact-form" style="margin: 0 auto; font-size: 22px; font-family: Open Sans; color: #ff4800; margin-bottom: 10px; padding-bottom: 4px; font-weight: 100; width: 100%; text-align: center;">Formularz kontaktowy</h1>
<label class="lang" key="contact-form-name" for=""></label>
<input id="name" class="contact-form-content" type="text" name="name" required>
<label class="lang" key="contact-form-email" for=""></label>
<input id="email" class="contact-form-content" type="email" name="email" required>
<label class="lang" key="contact-form-topic" for=""></label>
<input id="topic" class="contact-form-content" type="text" name="topic" required>
<label class="lang" key="contact-form-text" for=""></label>
<textarea id="message" name="message" style="line-height:16px; font-size: 14px; font-family: calibri;" class="contact-form-content" cols="" rows="10"></textarea>
<button class="contact-form-content-submit" name="submit" type="submit"><p class="lang" key="contact-form-send" style="margin: 0; padding: 0;">Wyślij</p><img id ="Contact_icon_white" src="img/Contact_icon_white.png" alt="White contact icon"></button>
</form>
<div class="contact-form-callnow" style="display: flex; align-items: center; justify-content: center; margin: 0; padding: 0;">
<p class="lang" key="callnow" id="contact-form-callnow" style="font-family: Open Sans; margin: 0; padding: 14px 0px 4px 0px;">Zadzwoń teraz i umów przeprowadzkę!</p>
</div>
<div style="display: flex; align-items: center; justify-content: center; margin: 0; padding: 0;">
<a style="margin: 0; padding: 0;" href="tel:+48732739751"><img src="img/Phone_icon_green.png" alt="Phone icon" style="height: 28px; padding-right: 10px"></a>
<a style="margin: 0; padding: 0;" href="tel:+48732739751"><p style="font-family: Open Sans; margin: 0; padding: 4px 0px 10px 0px; font-size: 20px;">732 739 751</p></a>
</div>
</div>
</div>