使用 POST in php 维护每页记录、排序和分页
Maintaining Record per page, sorting and pagination using POST in php
我遇到过这样一种情况,有人希望我通过 POST 请求而不是 GET 来实现排序、搜索、每页记录和分页。
我试着告诉他为什么 POST 不可行,喜欢
- 用户将无法为页面添加书签
- 通过 POST 我们无法在搜索 returns 记录大于每页记录时维护分页参数。
- 当用户通过单击页码导航到下一页时,将不会保持排序顺序。
然后他建议我在该实例的 cookie 中保留搜索、排序和分页值,一旦用户移动到其他页面,我们可以清除 cookie,或者我们保持会话
请帮我判断这是正确的做事方式吗?
所以,我不想插手你们公司的纠纷,但我理解你的处境,也意识到有时候你需要有人站在你这边。
1).首先,POST os NOT for getting,所以根据定义,他是错误的。如果你没有创造任何东西,你根本就没有 POST。 See here.
2).您关于无法为该页面添加书签以供以后访问的观点是完全正确的。
3).不不不不。不要将这些东西存储在会话或 cookie 中。虽然它不会伤害任何东西,但完全没有必要。它不是敏感数据,从技术上讲它可以工作。但是,如果您已经打破了第一点并使用了 GET 以外的其他动词,则只需要执行此操作。
如果您正在分页、排序等,那是因为您收到了数据。除非先 GET 才能收到信息,对吧?
首先你要让他明白GET在什么地方用,在什么地方用POST。
这里简单介绍一下,详细的可以问google.
GET:通常用于提交搜索请求或用户希望从服务器拉取信息的任何请求。
GET 的优势。
1.页面可以收藏。
2. 页面可以安全地重新加载。
POST:用于数据库中可能会更改或添加数据的请求。或页面你不想要的人书签。
POST的优势。
- URL 中未显示名称值对。所以这是安全的加分项。
- 无限数量的名称值对被传递。
基本上正如我提到的POST用于破坏性操作,例如创建、编辑或删除。
而对于拉取数据,我们主要使用GET。
将搜索参数放入 cookie 的必要性是什么,因为据我所知你正在做所有的事情,比如在服务器端进行排序或搜索,所以你必须将它传递给 url every time (or POST body If you follow the path of your Einstein Senior :) ), 所以不需要填写cookies space
希望对你有所帮助,他会理解的。
我遇到过这样一种情况,有人希望我通过 POST 请求而不是 GET 来实现排序、搜索、每页记录和分页。 我试着告诉他为什么 POST 不可行,喜欢
- 用户将无法为页面添加书签
- 通过 POST 我们无法在搜索 returns 记录大于每页记录时维护分页参数。
- 当用户通过单击页码导航到下一页时,将不会保持排序顺序。
然后他建议我在该实例的 cookie 中保留搜索、排序和分页值,一旦用户移动到其他页面,我们可以清除 cookie,或者我们保持会话
请帮我判断这是正确的做事方式吗?
所以,我不想插手你们公司的纠纷,但我理解你的处境,也意识到有时候你需要有人站在你这边。
1).首先,POST os NOT for getting,所以根据定义,他是错误的。如果你没有创造任何东西,你根本就没有 POST。 See here.
2).您关于无法为该页面添加书签以供以后访问的观点是完全正确的。
3).不不不不。不要将这些东西存储在会话或 cookie 中。虽然它不会伤害任何东西,但完全没有必要。它不是敏感数据,从技术上讲它可以工作。但是,如果您已经打破了第一点并使用了 GET 以外的其他动词,则只需要执行此操作。
如果您正在分页、排序等,那是因为您收到了数据。除非先 GET 才能收到信息,对吧?
首先你要让他明白GET在什么地方用,在什么地方用POST。
这里简单介绍一下,详细的可以问google.
GET:通常用于提交搜索请求或用户希望从服务器拉取信息的任何请求。
GET 的优势。 1.页面可以收藏。 2. 页面可以安全地重新加载。
POST:用于数据库中可能会更改或添加数据的请求。或页面你不想要的人书签。
POST的优势。
- URL 中未显示名称值对。所以这是安全的加分项。
- 无限数量的名称值对被传递。
基本上正如我提到的POST用于破坏性操作,例如创建、编辑或删除。 而对于拉取数据,我们主要使用GET。
将搜索参数放入 cookie 的必要性是什么,因为据我所知你正在做所有的事情,比如在服务器端进行排序或搜索,所以你必须将它传递给 url every time (or POST body If you follow the path of your Einstein Senior :) ), 所以不需要填写cookies space
希望对你有所帮助,他会理解的。