对于每个循环 - 设置会话变量
For each loop - setting session variables
我在 PHP 中有一个使用 foreach 循环的列表页面 (mysite.com/listing)。它输出一个用户 ID,例如user1、user2 和一个 link 到详细信息页面,例如: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”将在 Session 变量中设置并从列表页面传递到详情页。
在详细信息页面中,我只想输出“用户 ID 是 user1”。
我想知道 Session 变量如何在 foreach 循环中工作,或者是否有更好的解决方案?
如果我使用类似的东西:
$_SESSION['user_id'] = (string)$user->primary_id;
echo $_SESSION['user_id'];
..在列表页面的 foreach 循环中,它将捕获循环中的最后一个用户 ID,例如用户10
和
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"];
我在 PHP 中有一个使用 foreach 循环的列表页面 (mysite.com/listing)。它输出一个用户 ID,例如user1、user2 和一个 link 到详细信息页面,例如: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”将在 Session 变量中设置并从列表页面传递到详情页。 在详细信息页面中,我只想输出“用户 ID 是 user1”。 我想知道 Session 变量如何在 foreach 循环中工作,或者是否有更好的解决方案? 如果我使用类似的东西:
$_SESSION['user_id'] = (string)$user->primary_id;
echo $_SESSION['user_id'];
..在列表页面的 foreach 循环中,它将捕获循环中的最后一个用户 ID,例如用户10
和
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"];