2014-04-15 31 views
0

我对此很新,我的工作位置被要求创建一个网页来管理他们的图片数据库。 我创建了一个搜索页面,在这里的话通过搜索一个形式收到,这一点:返回到一个有表格数据的页面

<form name='searchform' action='search.php' method='post'> 
    Search: <input type='text' name='searchword' onkeydown=\"if (event.keyCode == 13) this.submit()\"> 
</form> 

当我寻找的东西,我看到所有的结果列表,通过获取我想要的话通过$_POST['searchword']进行搜索。当我点击任何结果时,它会将我重定向到另一个页面,并将结果细分。 问题是,在这样做之后,当我按下浏览器上的返回按钮时,它会要求我重新发送表单,而不是只显示前一页。 有没有办法跳过Ctrl + R和窗体重新发送确认?

我试过使用谷歌搜索和搜索到这个网页,但英文不是我的母语,我真的不知道用于web开发中的东西的名称,所以我找不到任何帮助我的东西。

感谢您的阅读:)

+0

这就是浏览器的工作原理。您通过表单向特定网址发送了POST请求。浏览器会记住这些信息,当你点击F5时,它会重新发送这些信息(因为这就是它如何到达指定的资源并向你显示信息,为了再次这样做 - 它需要重新包含信息)。避免它的方法是在你的search.php中计算结果,一旦完成 - 将结果保存在会话变量中,并将用户重定向到不同的页面。或者你可以提供一个链接,人们可以点击“返回”。 –

回答

0

为了防止这种情况,你可以简单地切换到GET模式:

<form name='searchform' action='search.php' method='GET'> 

而且随着$_GET['searchword']获得搜索词。它不会要求你重新加载

+0

工作完美,谢谢:) – Iskalla

+0

我正在审查旧的问题,并注意到我没有接受这一个。对不起,你在这里! – Iskalla

相关问题