【问题标题】:Pagination and $_POST分页和 $_POST
【发布时间】:2014-11-28 06:14:49
【问题描述】:

我想使用分页进行搜索,但我不知道如何在 $_POST 数组中“存储”数据,我应该使用会话进行吗?

罗伦森

【问题讨论】:

  • 我建议您不要使用 post 进行分页,它会导致无法添加书签、使用后退/前进按钮导航等,除非您使用一些非常复杂的技巧来使其工作.请改用 GET。

标签: php post pagination


【解决方案1】:

如果您在进行搜索,您是在尝试从服务器获取数据,而不是向其发送数据——这意味着您可能应该使用GET,而不是POST

此外,它还允许您的用户为结果页面添加书签(或通过电子邮件、即时消息等发送这些链接),这总是很好的;而且,还可以使用浏览器的后退/前进按钮而不会出现警告框,这也很好^^

(哦,顺便说一句,这将有助于解决您的问题 ;-))

【讨论】:

    【解决方案2】:

    是的,您可以在表单中使用会话或隐藏字段,甚至更好的 GET 方法。

    【讨论】:

    • 查询字符串,一路。这是获取书签、后退/前进和重新加载以直观工作的唯一明智的方法。使用隐藏字段构建查询字符串当然是可行的,只需在表单中使用 GET 作为方法即可。
    【解决方案3】:

    可以在表单中同时使用GET和POST,只需在form标签中添加适当的属性method

    <form action="index.php?page=5" method="POST">
    

    因此,页面链接是提交按钮,而其余数据存储在隐藏字段中。但这不是一个好方法,因为您无法将某人的链接(例如在 IM 上)传递给您的搜索结果。

    但最好的方法是将 POST 输入数据存储在某个地方(看这里:http://www.symfony-project.org/plugins/,当您输入一次查询时,它会被存储并记住,因此您不需要多次填写表单)

    【讨论】:

      猜你喜欢
      • 2016-08-28
      • 2016-08-09
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2017-12-17
      • 2013-04-21
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多