首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >PHP重定向表单提交不起作用

PHP重定向表单提交不起作用
EN

Stack Overflow用户
提问于 2018-04-20 16:11:01
回答 1查看 82关注 0票数 0

我在基本的联系方式上遇到了麻烦,我所读到的一切似乎都没有帮助,我尝试了不同的方法,但是没有什么真正有效。这个想法是在用户发送消息之后,他被重定向到一个成功/错误页面。一切似乎都正常,表单有效--我收到了它的电子邮件,但它并没有将我重定向到所要求的页面。任何建议都将不胜感激!

这是表格的代码。

代码语言:javascript
复制
    <div class="text-intro">

      <h1>Contact</h1><br><br>
      <p>To contact us please use the contact form visible. When sending files, please use the following e-mail</p><br><br><br><br><br>

      <form method="post" action="contactengine.php">

      <div class="contact-one">
        <p>
          <label for="Name">Username:</label><br><br>
          <input name="Name" id="Name" data-jkit="[validate:required=true;min=3;max=10;error=Please enter your username (3-10 characters)]">
        </p>
      </div>  

      <div class="contact-two">  
        <p>
          <label for="Email">E-mail:</label><br><br>
          <input name="Email" id="Email" data-jkit="[validate:required=true;strength=50;error=Please write your email]">
        </p>
      </div>  

      <div class="contact-three">  
        <p>
          <label for="Message">Message:</label><br><br>
          <textarea id="Message" name="Message"></textarea><br><br>

                  <input type="submit" name="submit" value="Submit" class="submit-button">
        </p>
      </div>            

        <p>
        </p>
      </form>


    </div>   

PHP:

代码语言:javascript
复制
<?php

$EmailFrom = "test@gmail.com";
$EmailTo = "test2@gmail.com";
$Subject = "New message";
$Name = Trim(stripslashes($_POST['Name'])); 
$Tel = Trim(stripslashes($_POST['Tel'])); 
$Email = Trim(stripslashes($_POST['Email'])); 
$Message = Trim(stripslashes($_POST['Message'])); 



// prepare email body text
$Body = "";
$Body .= "Name: ";
$Body .= $Name;
$Body .= "\n";
$Body .= "Tel: ";
$Body .= $Tel;
$Body .= "\n";
$Body .= "Email: ";
$Body .= $Email;
$Body .= "\n";
$Body .= "Message: ";
$Body .= $Message;
$Body .= "\n";

// send email 
$success = mail($EmailTo, $Subject, $Body, "From: <$EmailFrom>");


// redirect to success page 
if ($success){
  print "<meta http-equiv=\"refresh\" content=\"0;URL=index.html\">";
}
else{
  print "<meta http-equiv=\"refresh\" content=\"0;URL=index.html\">";
}
?>
EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2018-04-20 16:14:13

我建议您不要打印HTML,而是修改标题以重定向浏览器。这是我在重定向时经常用到的。它的工作如下:

代码语言:javascript
复制
header('Location: http://www.example.com/');
exit;

在发送标头之前,请确保没有输出。

票数 3
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/49945783

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档