My HTML:
<div class=" col-sm-7 slideanim text-center ">
<div class="row text-center">
<h4 class="text-center"><b>Fill the details and we'll get back to you within 6 business hours. <br>
* - Required</b></h4><i>
<form action="mail_handler.php" method="post" name="form" class="formfont">
<div class="col-sm-6 form-group">
<input type="text" name="name" class="inp form-control" placeholder="Enter Your Name*" required="">
</div>
<div class="col-sm-6 form-group">
<input type="email" name="email" class="inp form-control" placeholder="Enter Your Email*" required="">
</div>
<div class="col-sm-6 form-group">
<input type="tel" name="phone" class="inp form-control" placeholder="Enter Your Phone*" required="">
</div>
<div class="col-sm-6 form-group">
<input type="text" name="college" class="inp form-control" placeholder="College/University*" required="">
</div>
<div class="col-sm-12 form-group">
<textarea name="msg" class="msg-box form-control" placeholder="Enter Your Message Here...(Optional)"></textarea>
</div>
<input type="submit" name="submit" value="Send" class="sub-btn">
<br>
<br>
</form>
</i></div>
</div>
MailHandler php
<?php
if(isset($_POST['submit'])){
$name=$_POST['name'];
$email=$_POST['email'];
$phone=$_POST['phone'];
$college=$_POST['college'];
$msg=$_POST['msg'];
$to='mailtosemicolon@gmail.com'; // Receiver Email ID, Replace with your email ID
$subject='Form Submission';
$message="Name :".$name."n"."Phone :".$phone."n"."Wrote the following :"."nn".$msg;
$headers="From: ".$email;
if(mail($to, $subject, $message, $headers)){
echo "<h1>Sent Successfully! Thank you"." ".$name.", We will contact you shortly!</h1>";
}
else{
echo "Something went wrong! Please try back sometime later";
}
}?>
我正在设计一个网页,其中包含 3 个部分,分别是第 1 部分、第 2 部分和第 3 部分。因此,在第 3 节中,我有一个表单,并将其操作为 php file[MailHandler.php],它实际上从表单中获取详细信息,并在单击提交按钮(表单内部(后向我的个人邮件发送邮件。
当详细信息成功发送到我的邮件ID时,有没有办法重定向到第3部分,并在表单中的提交按钮下方显示成功消息
由于您停留在第 3 部分,因此无需重定向。我会在Javascript中解决这个问题。
您可以做的是将提交按钮替换为普通按钮。单击后,您可以使用 Javascript 生成对服务器的 ajax 请求,就像提交一样。使用返回代码或自定义返回数据,您可以使用 Javascript 在表单下方插入响应。 如果您使用的是 JQuery,则可以像这样快速生成表单数据:
$('form').serialize()
ajax 请求具有您可以使用的done
或success
方法。请参阅此示例:https://www.w3schools.com/jquery/ajax_ajax.asp
有两种方法可以解决您的问题。
第一个是使用JavaScript。通过这种方式,您可以将联系表单提交到您的 PHP 脚本中,然后显示响应消息,甚至无需重新加载页面,教程可以在这里找到。
第二种方法是当您将联系表单提交给PHP时,然后使用PHP重定向回HTML页面,并在URL中附加一个部分ID,类似于http://www.example.com/index.html#section3
,其中section3
是部分的ID。