分页与html表单一起

时间:2012-02-12 08:46:05

标签: php mysql forms pagination

在我的网站上,我使用分页(类似于本页底部的分页)来输出MySQL。对于当前页面的更改,我使用GET方法(变量页面),它运行良好。 但是,在我的页面上,我还有一个表单,使用方法POST,它充当MySQL输出的过滤器。这会产生一个问题,因为当我更改表单设置时,提交它们(POST),地址行(GET)中的页面保持不变。在某些情况下,当过滤后的输出的页数少于当前设置的页数时,这是个问题。

是否可以在提交表单时将页面变量设置为0? 特别是,我使用$_SERVER['REQUEST_METHOD'] == 'POST'做到了。但是,这只会改变代码中的变量。不在地址栏。 另一方面,我想在更改输出页面时保留POST变量。

提前致谢。

3 个答案:

答案 0 :(得分:0)

您的设置中存在逻辑冲突:
与GET方法不同,POST方法不会将变量保留在地址栏中。但由于某种原因,您使用的是POST方法。

因此,解决方案非常简单 - 使用GET方法进行过滤。

要创建分页链接,请使用http_build_query()数组中的$_GET

答案 1 :(得分:0)

事实上,最好在地址中发送过滤条件(GET方法)。它将通过分页解决您的问题,您(以及您的用户)将直接链接到搜索结果。

答案 2 :(得分:-1)

在您的PHP代码中,如果您正在提交(通过按“过滤器”按钮或其他任何调用按钮),您希望重定向到删除了页面GET参数的URL。所以它将从第0页开始。

您必须自己重写URL(或使用插件)。

Typo纠正,我的意思是第0页,而不是1:P