2017-05-05 69 views
0

我最近有一个要求为体育俱乐部创建一个投球预定系统。俱乐部基本上希望球队的经理们能够在他们选择任何时候请求预定球场,然后管理员可以确认/否认。 我不完全确定我应该如何去做。到目前为止,我正在考虑有一张桌子来表示球场可用的日期和时间,然后是预定的另一张桌子(其中包含开始时间,结束时间和球队名称)。然后我正在考虑在网页上的表格中检索和显示数据。从数据库创建时间表

目前我主要关心的是数据结构。我不知道我刚刚提到的方法是否正确。任何帮助将非常感激。

最后,如果在所有可能的一些提示如何将最好显示在我的aspx页面的数据也将不胜感激。

我知道我可能会被告知这样一个模糊的问题,但我会很感激一点帮助/反馈,然后再继续。

非常感谢大家对我们提供的任何帮助,我期待着您的建议可以让您满意。

干杯,

迈克尔。

+1

在阅读了[标准化](http://www.studytonight.com/dbms/database-normalization.php)和你的数据结构应该成为相当明显。试图在这个Q&A格式中获得更详细的回应并不真正起作用,尤其是因为我们本质上是在为您做项目...... – iamdave

+1

“关于如何最好地显示我的数据的一些提示aspx页面也将不胜感激。“看看使用类似的东西(每个节点将是左侧的“资源”):https://fullcalendar.io/scheduler/(免费许可证可用于非营利组织)。您也可以考虑使用它来输入预订 - 只需少量工作,您就可以选择日历的区域,以便人们可以将所需的预订拖放到该时间段。 – ADyson

+1

就数据结构而言,至少需要表来表示:间距,用户,预订(对于球场和用户来说有外键)。如果你想有固定的“插槽”进行预订(而不是让人们选择他们喜欢的任何开始/结束时间),你可以在另一个表中定义它们(然后你可以将这些插入到Scheduler插件中以帮助验证输入) 。 – ADyson

回答

0

主要问题是如果球场的时间是可用的随机或规则(希望经常)。 如果定期(如周一至周六10-18 ...,可以每小时使用),那么你需要一个

间距表:音调ID,姓名,电话号码...等

can_use表:音高ID ,天(1-7或周一至周日),从小时到小时

使用的表:音调ID,日,小时(管理检查和确定)

并在您的网页,每间距(ID)一个表,列是天,行是从select * from can_use建立的小时,其中pitch_id = ...按天排序。 从小时到小时的项目有多少行。

填写网络表格(用于循环) - 由pitch_id,日,小时

从用在pitch_id = ...为了

选择*如果日期及时间匹配从选择的项目,然后它被预订(可能显示管理员是否也检查过它)并转到选择中的下一个项目。

如果不是,它是一个预订项