【发布时间】:2022-10-16 12:06:09
【问题描述】:
我有一个网页,它从名为 datalist.php 的 mysql 数据库中加载所有数据
在此页面上,我可以使用一个按钮逐条编辑记录,该按钮将您重定向到适合记录的 fid 的 editdata.php 页面。
一旦他们想要查看更改进行编辑,我不会将它们重定向到主要的让他们看到更改并简单地单击返回或使用按钮返回到 datalist.php 没有任何问题。
按钮是这个
echo "<p id='parrafo'><a style='padding:1px 20px'class='button rounded-0 primary-bg text-white w-0 btn_1 boxed-btn' href='javascript:history.back() '><--</a></p>";
问题
我添加了一个搜索引擎,可以过滤显示的数据。
当他们使用 datalist.php 中的搜索引擎时,我将他们引导到一个名为 search engine.php 的页面,在该页面中,通过 post 方法,我将他们正在寻找的内容存储在一个变量中,并显示用户想要的数据。
但是当他们编辑过滤的记录时,它被编辑没有问题,但是当他们返回时,他们返回到 search engine.php 并出现消息:
"确认表单重新提交 为了正确显示,此网页需要您之前输入的数据。您可以再次提交该数据,但这会导致页面重复之前的所有操作。按重新加载提交数据并显示页面。
点击页面刷新按钮重新提交加载页面所需的数据。”
当然,如果它们更新,它们会在过滤数据出来时回来。
是否有任何方法可以存储搜索中使用的变量,以便当我返回时不会收到此错误或任何解决方案?
【问题讨论】:
-
通常,您不想“返回”到 POST 请求,正是出于这个原因。 “回去”意味着重新播放上一个请求。如果该请求是 POST(或 PUT、DELETE,任何旨在修改数据的内容),那么“返回”意味着提交该请求以再次修改数据。相反,您通常会“前进”到您想要访问的任何页面。您的用户“返回”到什么地方?为什么它需要“返回”而不仅仅是指向他们想要查看的页面的链接?
-
出于搜索目的,通常您会希望使用 GET 而不是 POST。您可以使用 GET 变量来过滤数据。