在我的网站上,我使用分页(类似于本页底部的分页)来输出MySQL。对于当前页面的更改,我使用GET
方法(变量页面),它运行良好。
但是,在我的页面上,我还有一个表单,使用方法POST
,它充当MySQL输出的过滤器。这会产生一个问题,因为当我更改表单设置时,提交它们(POST
),地址行(GET
)中的页面保持不变。在某些情况下,当过滤后的输出的页数少于当前设置的页数时,这是个问题。
是否可以在提交表单时将页面变量设置为0?
特别是,我使用$_SERVER['REQUEST_METHOD'] == 'POST'
做到了。但是,这只会改变代码中的变量。不在地址栏。
另一方面,我想在更改输出页面时保留POST
变量。
提前致谢。
答案 0 :(得分:0)
您的设置中存在逻辑冲突:
与GET方法不同,POST方法不会将变量保留在地址栏中。但由于某种原因,您使用的是POST方法。
因此,解决方案非常简单 - 使用GET方法进行过滤。
要创建分页链接,请使用http_build_query()
数组中的$_GET
答案 1 :(得分:0)
事实上,最好在地址中发送过滤条件(GET方法)。它将通过分页解决您的问题,您(以及您的用户)将直接链接到搜索结果。
答案 2 :(得分:-1)
在您的PHP代码中,如果您正在提交(通过按“过滤器”按钮或其他任何调用按钮),您希望重定向到删除了页面GET参数的URL。所以它将从第0页开始。
您必须自己重写URL(或使用插件)。
Typo纠正,我的意思是第0页,而不是1:P