对于每个循环 - 设置会话变量

用户301276

我有一个使用 foreach 循环的 PHP 列表页面 (mysite.com/listing)。它输出一个用户 ID,例如 user1、user2 和一个详细信息页面的链接,例如:mysite.com/detail

输出:

1. User ID = user1 <a href="mysite.com/detail">Detail Page</a>
2. User ID = user2 <a href="mysite.com/detail">Detail Page</a>
...
10. User ID = user10 <a href="mysite.com/detail">Detail Page</a>

详细信息页面 (mysite.com/detail) 需要从列表页面接收相应的用户 ID,例如,如果用户单击项目 1,“user1”在会话变量中设置并从列表页面传递到详细信息页面。在详细信息页面中,我只想输出“用户 ID 是 user1”。我想知道 Session 变量如何在 foreach 循环中工作,或者有更好的解决方案吗?如果我使用类似的东西:

 $_SESSION['user_id'] = (string)$user->primary_id;
    echo $_SESSION['user_id'];

.. 在列表页面的 foreach 循环中,它将捕获循环中的最后一个用户 ID,例如 user10 并且echo $_SESSION['user_id'];...在详细信息页面中将输出“user10”而不是“user1”。甚至可以在 foreach 循环中使用会话变量吗?谢谢

阿戴森

"user1" is set in a Session variable and passed from the listings page to the detail page……没有必要那样做。会话不是实现这一目标的最佳方式(尤其是因为如果您在浏览器中的多个选项卡中打开站点,则传输数据的模型会中断)。

只需在超链接 URL 中放置一个查询参数并使用$_GET.

例如

User 1 <a href="mysite.com/detail?user=1">Detail Page</a>
User 2 <a href="mysite.com/detail?user=2">Detail Page</a>

...等等。

并在“详细信息”页面中:

$userID = $_GET["user"];

本文收集自互联网,转载请注明来源。

如有侵权,请联系 [email protected] 删除。

编辑于
0

我来说两句

0 条评论
登录 后参与评论

相关文章