我对数据库关系比较陌生,我很乐意为建立数据库以进行会话的基本注册提供一些建议。
目标: 发布一个人们可以注册的新会话。每次会议最多8人。管理员可以看到已注册的人。
以下是我目前从前端获得的内容(底部的注册框暂时就在我处理时):
我让后端努力在POST上创建一个新的培训课程:
<?php
session_start();
include ('global/db/connection.php');
$session_name = $_POST['session_name'];
$session_description = $_POST['session_description'];
$session_date = $_POST['session_date'];
$result=MYSQL_QUERY("INSERT INTO trainingsessions (id,session_name,session_description,session_date,session_open_slots,session_booked_slots)".
"VALUES ('NULL', '$session_name', '$session_description', '$session_date', '8', '0')");
header("location: admin.php");
&GT;
我也能够查询表格并在上表中显示结果。我想弄清楚的是我需要在用户之间创建什么样的关系和表格,然后显示仍然打开的适当数量的插槽。
非常基本,目前没什么特别的。只是试图通过其他搜索得到一些基本面而不是运气。希望这是有道理的,谢谢你的帮助!
答案 0 :(得分:1)
您将在用户和会话之间建立多对多的关系(大概)。实质上,每个用户可以被分配到许多会话,并且每个会话将具有多个用户。因此,您需要一个创建复合键的交叉表(主键由多个字段定义)。例如,我会制作以下表格:
Table: user
Columns: ID (primary key), Username, email
Table: sessions
columns: ID (primary Key), Name, Description, Date
Table: user_sessions
columns: user_id, session_id
使用此结构,用户可以拥有多个会话,会话可以拥有多个用户。