php - 使用用户的 session ID 号在包含多个以逗号分隔的数字的字段中查找其号码

标签 php mysql session

我有一个数据库设置(请参阅下面的示例图片),其中显示了他们创建的每位教师(导师)的类(class)以及教师的 ID。此外,还有其他两个字段:register_stud_idsregister_tut_ids,它们的字段中可以包含一个或多个数字,并用逗号分隔。

如果任一字段中只有一个数字,则使用下面的代码根据用户的 session 登录号码获取特定于该用户的结果网页没有问题,但当任一字段中有两个或多个数字时,生成的网页并不特定于该用户,它只是显示我拥有的 if then... 语句的 else。

所以,我的问题是,如何更改下面的代码以从 register_tut_ids 字段或 register_stud_ids 字段中的号码列表中获取用户的 session 登录号码?

data table example image

if ($getrow['register_tut_ids'] == $_SESSION['ses_idno'] OR $getrow['tut_id'] == $_SESSION['ses_idno'] && $_SESSION['u_type'] = ='t')

else if ($getrow['register_stud_ids'] == $_SESSION['ses_idno'] && $_SESSION['u_type'] =='s')

最佳答案

我建议您将数据库结构更新为以下内容:

+----------+--------+------------+
| class_id | tut_id | student_id |
+----------+--------+------------+
|        1 |      2 |          1 |
|        1 |      2 |          2 |
|        1 |      2 |          3 |
|        2 |      2 |          4 |
+----------+--------+------------+

看看特定的类(class)或教程如何可以有多个学生?

这使得数据查询变得容易。只需在 SELECT 语句中使用 WHERE 子句以及您想要满足的条件即可。如果您返回结果,那么您就有匹配的记录,否则只需执行 else 部分即可。

关于php - 使用用户的 session ID 号在包含多个以逗号分隔的数字的字段中查找其号码,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/43248044/

相关文章:

php - Codeigniter MYSQL QUERY insert_string 避免重复

php - 使用 jQuery ajax post 接收 PHP 参数

PHP - 检测远程主机断开连接

javascript - 使用 $_SESSION 将输入值传递到另一个页面

c# - OWIN 中间件可以使用 http session 吗?

java - Spring MVC 中的@SessionAttributes 何时被删除? (带代码示例)

php - 安排一个 php 页面调用 mysql 中的存储过程每 x 秒运行一次

javascript - 为什么在按 Enter 或使用条形码扫描仪时我的表单被提交两次?

mysql - 每 1 小时自动通过 SSH 隧道对远程 mysql 服务器运行一次 select 语句

mysql - HSQLDialect 到 MySQL5InnoDBDialect、Hibernate