【发布时间】:2021-12-25 09:25:30
【问题描述】:
我正在使用 lms 系统,我遇到了这个问题
foreach($datas as $data){ ?>
<div style="background-color: #3B4FDF; border-radius: 3%; width: 30%; height: 220px; margin-right: 5%; cursor: pointer;" onclick="location.href='classAdmin_list.php'">
<p style="font-size: 1.5vw; color: white; position: relative; left: 7%; top: 0%;"> <?= $data['class_name'] ?> </p>
<p style="font-size: 1vw; color: white; position: relative; left: 75%; top: -25%;"> <?= $data['class_code'] ?> </p>
<p style="font-size: 1vw; color: white; position: relative; left: 7%; top: 17%;"> <?= $data['school'] ?> </p>
<?php $_SESSION['className'] = $data['class_name']; ?>
<img src="foto/balll.png" alt="ball" style="opacity: 0.5; width: 22%; height: 100px; position: relative; left: 75%; top: -30%;">
</div>
<?php } ?>
那些罗马数字是名字。我目前将它们保存在 foreach 循环内的 $_Session 中。而这正是问题所在。
你看到了(I-2)。
我需要 I-2 是基于它被点击的 div 的类名(罗马数字)。
但是该值被保存在 $_Session 中,并且 $_Session 得到更新并覆盖以前的值。所以如果我点击 1 div (XII-3) 它不会说:“Class XII-3”而是“Class I-2”。
这是我用来制作“X 类”的代码
<p>
Class <span><?= $_SESSION['className'] ?></span>
</p>
我看到了一些问题,但它们用于每个循环,所以我问,因为我找不到答案
【问题讨论】:
-
请贴出完整代码。
-
您应该在 URL 查询参数中传递类,而不是会话变量。
-
你为什么把它存储在一个会话变量(被覆盖)中?在
onclick中使用 URL 参数并在classAdmin_list.php中获取该参数 -
请分享更多细节。为什么这个问题用 MySQL 或 Javascript 标记,但不包含任何此类代码?您在哪里从会话变量中读取数据?请记住,您只能在该变量中存储 单个 值,在该循环的每次迭代中,您都会覆盖以前的值
-
我想我得到了答案,但是 js 和 mysql 标签是有效的,数据库是 mysql 并且我放了 js 因为我认为答案将包含 js 。而且我没有分享所有代码,因为:1.有很多和2.隐私原因。谢谢
标签: javascript php html mysql