【发布时间】:2019-03-27 20:25:33
【问题描述】:
尝试制作一个基本的预订系统,用户可以说他们需要 30 分钟的预约,并且代码可以输出可以免费预订 30 分钟的时间段。
我首先尝试忽略“时间”因素并通过“插槽”对其进行编码以消除所有日期时间复杂度,并开始使其工作 1 天。
我将一天分成 15 分钟时段,然后创建了一个 $slotstatus,1 表示忙碌,0 表示空闲。
然后就是查看表格行以找到空闲槽并回显它们的简单问题。
我遇到的问题是所需时间超过 1 个时隙。所以我需要计算“Slotstatus = 0”的数量并确保有足够的可用时间来满足要求。
当我看到一个 0 时,我尝试使用 count ++,但随后在需要按顺序输出两个插槽的区域出现问题。
我在代码方面非常业余,我这样做是为了提高我的编码逻辑大脑很差的一种爱好。
请有人指出我正确的方向
'''''''''''''''''''''''''''''''''''''''''''' ''''''''''''''''''''''''''''
$count = 0;
$req = 3;
echo $req . " is the SlotReq<br>";
echo $count . " is the starting count<br><br>";
$sql = "SELECT slotnumber, slottime, slotstatus FROM timeslots";
$result = $conn->query($sql);
if ($result->num_rows > 0)
{
// output data of each row
while($row = $result->fetch_assoc() )
{
if ($row["slotstatus"] == 0)
{
$count ++;
if ( $count == $req)
{
echo "<br>Pass for " . $row["slottime"] . "
Status: ". $row["slotstatus"] . " Count " . $count;
$count = 0;
}
else
{
echo "<br> False for " . $row["slottime"] . "
Status: ". $row["slotstatus"] . " Count " . $count;
}
}
else
{
echo "<br> False for " . $row["slottime"] . "
Status: ". $row["slotstatus"] . " Count " . $count;
$count = 0;
}
}
}
else
{
echo "Error: No results Found";
}
'''''''''''''''''''''''''''''''''''''''''''''''''''''''''''
在页面上应该是这样的
表 table as image ID slottime slotstatus 1 10:15 0 2 10:30 1 3 10:45 0 4 11:00 0 5 11:15 0 6 11:30 0 7 11:45 1
因此,如果用户想要一个 30 分钟的时段,则应根据上表为他们提供选项
10:45 11:00 11:15
【问题讨论】: