在我的项目中有一些记录的列表。用户可以通过项目名称搜索记录。搜索后用户可以编辑特定记录。编辑后,当用户立即单击“更新”按钮时,它正在重定向到列表页面,但搜索结果消失了,所有记录都在显示。
更新后我只想显示搜索到的记录而不是全部。如何取回搜索键?如果有其他更好的方法,我不想为此使用 session 。
我正在使用 codeigniter。
例如:
有一个包含 10 条记录的列表。用户通过“ABC”搜索记录。结果来了,其中有“ABC”项目,如 5 条记录。然后用户编辑一条记录并更新它。更新后,我想显示 5 条仅具有搜索键“ABC”的记录。现在它显示 10(全部)条记录,因为我在没有搜索键的情况下在列表页面上重定向。我不知道该怎么做。 :(
最佳答案
我个人会做的是在我的列表页面上做这样的事情我会有一个表单,该表单将通过 GET 方法提交给搜索功能。这样我的所有搜索参数都在 URL 中,我的 URL 将是这样的:
exampledomain.com/users?name=steve&age=23
现在,对于编辑页面,我将生成一个带有特殊参数的链接:lastpage,其值将是当前搜索参数的某种编码形式。因此,当用户转到编辑页面时,URL 将是这样的:
exampledomain.com/users/edit/34?lastpage=erasc1235234safvdadsrgdfgbvcdfgrt435
当编辑功能完成时。我会选择这个 lastpage 参数形式 $_GET['lastpage']
(或者在 CI 中你可以使用 $this->input->get('lastpage')
)来获取 lastpage 的编码值并将其解码以获取所有先前的 URL 搜索参数。并使用附加到 URL 的搜索参数再次将用户重定向到 serach 函数。
关于php - 当有人在搜索后编辑结果时如何获取搜索键,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/33073406/