【问题标题】:Saving value after a refresh刷新后保存值
【发布时间】:2016-05-03 22:55:28
【问题描述】:

我通过带有 POST 的表单将值“name="idUser"”从 pageA 传递到 pageB。

然后在 pageB 中,我有一个查询,该查询将该值用于不同的事情,例如选择、更新、插入等。

Ej: $updateIDU=$_POST["idUser"];

Select * from table where idUser = $updateIDU;

pageB 在表单中有一个可以更新的表(您可以添加值,使用表单将值发送到数据库)。

信息更新到数据库后,我刷新页面:

$link="LOCATION:pageB.php?ok=1";
header($link);  

问题是当我使用该方法刷新页面时,表的查询会因错误而崩溃:

注意:未定义索引:C:\wamp64\www\pageB.php 中的 idUser

有人可以帮我解决我的问题,还是有另一种方法可以将此值 (ID) 从 pageA 传递到 pageB 而不会在刷新时丢失(更新表单表)?

注意当我刷新页面 (F5) 时,页面不会显示任何错误,但是当我更新表格(使用表单)时,它会显示错误。

【问题讨论】:

  • 你试过什么?如果没有发布任何内容,您是否将帖子设置为会话?
  • 你需要一个会话。 php.net/manual/en/book.session.php
  • 当您从 pageA 传递到 pageB 时,会使用从 pageA 发送的 $_POST["idUser"] 显示一个表格。这个表也有这个idUser,我所做的是使用pageA(idUser)中的表单的相同名称在表中添加这个idUser

标签: php mysql forms post


【解决方案1】:

您可以设置一个 cookie 来保留所有页面的数据,而不是使用 Post。使用此设置 cookie:

setcookie("TestCookie", $value);

然后使用以下命令访问它们:

$_COOKIE["TestCookie"];

【讨论】:

  • Cookie 或会话是更好的解决方案。
  • $value 将成为 $_POST?或者我如何获取从表单发送到 setcookie() 的 ID。我想做的是,你有一个搜索引擎,它会列出所有用户,当你按下“信息”按钮时,它会将你重定向到 pageB,在那里将使用用户 ID 显示信息帖子已发送
  • 当A页面的Post数据到达B页面时,从post数据中设置cookie。页面刷新后,您将能够访问 cookie 中的数据,因为它存储在用户的浏览器中。
  • 我添加了“setcookie("TestCookie", $_POST['idUser']);"在页面 B 的开头。在我的查询中,我使用了 where idUser = $_COOKIE["TestCookie"];,但是当我单击表单中的“更新”按钮时,它会导致错误。未定义索引:第 4 行 C:\wamp64\www\pageB.php 中的 idUser 注意:未定义索引:第 145 行 C:\wamp64\www\pageB.php 中的 TestCookie
【解决方案2】:

您可以在页面 b 中有一个隐藏的表单域,当用户登陆页面 b 时更新表单域。

【讨论】:

    猜你喜欢
    • 2020-08-19
    • 1970-01-01
    • 2021-08-08
    • 2021-03-19
    • 2018-10-31
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2010-11-04
    相关资源
    最近更新 更多