我觉得我在这里错过了一些简单的东西,并且在建立一个预约"预约时会遇到一些困难。日历。
客户可以预订自己的时间段,当他们这样做时......我需要让其他人无法使用这些时间段。
我正在使用下拉到" for循环"从上午9点到晚上7点,间隔30分钟,开始时间为#34;选择。如果"开始时间" "上午10:00"和#34;结束时间" " 11:30 am"保存在数据库中...上午10:00,上午10:30和上午11:00需要从"开始时间"成功提交表格后下拉。
(数据库结果采用字符串形式... fyi)
要做到这一点,我有这个:
IV243DLR
任何建议,要完成这个或更好的方法而不是" in_array"完成我想要做的事情?
提前谢谢。
答案 0 :(得分:0)
解决方案是将“while循环”移到“for循环”之外,而我没有考虑附加在$ the_time变量末尾的“br”。
以下是工作代码:
$sql_slots = "SELECT * FROM XXXXXX WHERE date = '$query_date' ORDER BY XXXXXXX ASC";
$result_slots = mysqli_query($connection, $sql_slots);
$open = strtotime("9:00am");
$starting = array();
while($row_result_slots = mysqli_fetch_assoc($result_slots)){
$starting[] = $row_result_slots['start_time'];
}
echo'
<select name="start_time">';
for($b = 0; $b <= 20; $b++){
$y = strtotime(($b*30) . " Minutes", $open);
$the_time = date("h:ia", $y);
if(in_array($the_time, $starting)){
echo "<option>Not Available<br></option>";
} else {
echo "<option>" . $the_time . "<br></option>";
}
}