2011-09-11 41 views
0

所以我有一个html表单,我有一个URL将被提交,说这个URL是www.myformsubmit.com/form_submit.php。这个form_submit.php将给我一个文本,说明表单中的一切是否正确或打印出错误信息。关于POST和重定向的问题

我想要做的是,将表单提交给form_submit.php后,我想将用户重定向到一个感谢页面。我的问题是,有没有办法做到这一点,而无需触摸form_submit.php,如果是的话如何?

+0

'有没有不需要触摸form_submit.php就可以做到这一点。没有触摸或替换文件是没有办法的,因为A)它永远不知道什么时候重定向,因为它不能触及文件B)它需要1行添加到它,所以它重定向到您的谢谢页面。使用AJAX你可以做的不是使用你的html页面将数据发送到php文件,而是使用AJAX为你处理数据,这样你就可以过滤响应和/或重定向你的用户。 – Prix

+1

是否有任何理由不能修改form_submit.php?不使用PHP的头文件指令,唯一的方法是使用javascript/jQuery,如下所述。 –

+0

我想我喜欢用AJAX的方式.. – adit

回答

3

使用您当前的设置,您不能在不修改form_submit.php的情况下重定向到其他页面。

可以有形式提交给本身,然后做这样的事情:

<?php 
    // Optionally, also make sure that there are no errors. 
    if (isset($_POST["SomeInputValue"])): 
    { 
     // Must be BEFORE any output is sent! 
     header("Location: /thank_you.php"); 
    } 

    else 
    { 
     // Display the form page. 
    } 
?> 
0

我的问题,是有办法做到这一点,而无需触摸form_submit。如果是的话,PHP如何?

你想检查一切从form_submit.php罚款,但你不想发布数据呢?我认为这是不可能的。

0

是有办法做到这一点,而无需触摸form_submit.php, 如果是如何?

简短的回答是否定的。要正确回答你的问题,我们需要知道你为什么不能修改form_submit.php。这是因为一个简单的代码行可以被添加到重定向到一个“谢谢”页面表单时正确填写。

(将相应修改成的问题是developped)

+0

这是一个PHP问题。 OP需要在做这样的事情之前了解基础知识。 –

+0

我已经添加了一个PHP代码片段。我不确定它会起作用,但现在想起来,curl就等同于重定向。我还添加了一些教程链接,以防使用客户端javascript变成唯一可行的选项。 –

+0

根据你的编辑:我再次认为OP已经误解了一些非常基本的东西。我不认为在这个简单的问题上抛出cURL和ajax是一个很好的解决方案。认真 - 你会***使用此代码?除非你认为这对好奇的挑战是一个挑战,否则指导OP朝着正确的方向会更有帮助。这不是你的错,这个问题如此糟糕的沟通,但我相信这是相当清楚,OP仍在学习基本面。 –