【问题标题】:php get the post data when using pagination scriptphp在使用分页脚本时获取帖子数据
【发布时间】:2015-12-28 03:07:08
【问题描述】:

我有一个名为 mainPage.php 的页面,其中包含一个显示页面列表的分页脚本。

 [1][2][3][4][5] 

分页工作正常,但是当我转到下一页时,帖子数据消失了。

for($i=1;$i<=$totalPage;$i++)
{
if($page==$i)
{
echo ' <input  type="button" value="'.$i.'"> ';
}
else
{
echo '<a href="mainPage.php='.$i.'"> <input type="button" value="'.$i.'"> </a>';
}}

点击此链接后有什么办法可以让post数据到下一页:

 <a href="mainPage.php='.$i.'"> 

没有表格。

【问题讨论】:

  • 您要将哪些帖子数据转移到下一页?您可以使用 anchor 从 jQuery 触发 on('submit') 函数。
  • 这样发布数据 $date = $_POST['date'];虽然整个脚本都在表单中,但它不起作用

标签: php post pagination


【解决方案1】:

不,这是不可能的。当一个表单(使用method=post)提交到服务器时,这是一个 POST 请求。如果要发出另一个 POST 请求,则需要发出另一个 POST 请求。如果您单击链接,则不是 POST 请求。

我假设您的方案类似于搜索表单,它通过 POST 提交并返回几页结果。在这种情况下,POST 无论如何都会被滥用。应该使用 HTTP POST 请求来更改服务器上的数据,例如注册新用户或删除记录。只是一个搜索表单不是数据更改,它只是数据检索。因此,您的表单应为method=get。这将产生一个以表单值作为查询参数的 URL:

mainPage.php?search=foobar

然后,您可以轻松地创建分页 URL:

printf('<a href="mainPage.php?%s">...', http_build_query(array('page' => $i) + $ _GET));

这将导致:

mainPage.php?search=foobar&page=2

这样您的所有请求都是自包含的 GET 查询。

【讨论】:

  • 没有办法使用post方法吗?
  • 是的:制作所有链接表单并提交按钮。
  • 我没听明白,“制作所有链接表单并提交按钮”是指制作 froms 链接还是什么?你知道的任何外部网站都可以喜欢我吗??
  • 如果你想发出一个 POST 请求,你需要一个&lt;form&gt;&lt;input type="submit"&gt;&lt;/form&gt;。如果要在 POST 中使用分页,则需要将每个分页链接设为 &lt;form&gt;&lt;input type="submit"&gt;&lt;/form&gt; 而不是 &lt;a href=".."&gt;。如果这不是您所说的,您最好打开一个新问题并更详细地解释您的问题。
【解决方案2】:

尝试&lt;a href="mainPage.php?page='.$i.'"&gt; 并获取页码。使用$_GET['page'];

【讨论】:

    【解决方案3】:

    您可以使用 GET 方法代替 post 来完成您的工作。如果您想在 post 请求中进行,您需要为每个请求单独执行。

    【讨论】:

    • 如何在post方法中制作like?
    猜你喜欢
    • 2021-11-25
    • 2018-01-03
    • 2016-05-23
    • 1970-01-01
    • 2017-07-05
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多