php - 根据数据库记录和先前选择的选项显示选项
问题描述
假设我有两个选择块。第一个是星期几,第二个是时间。在我的 phpmyadmin 数据库中,我记录了一些日期和时间(星期二,13.30;星期五 17.00 等)。所以问题是我怎样才能只显示一天中那些不在数据库中的时间作为选项。
第一个用户应该选择一天。如果他选择了一天,我将其记录在一个变量中,然后向他展示下一个选择块。我试过!empty($_POST['day'])
了,但它不起作用。
我不明白我应该如何将当天的选择选项值(当用户通过单击它进行选择时)记录到变量(如果用户选择了 Tuesday $weekday = "tuesday"
, if Monday, $weekday = "monday"
),所以稍后我可以将它与记录进行比较如果同一天的同一时间有记录,则跳过数据库。
我从上午 9 点到晚上 11 点每半小时迭代一次
<select name="day" id="day">
<option value="">Day</option>
<option value="monday">Monday</option>
<option value="tuesday">Tuesday</option>
<option value="wednesday">Wednesday</option>
<option value="thurthday">Thurthday</option>
<option value="friday">Friday</option>
</select>
<?php
$weekday = "";
if(isset($_POST['day'])){
$weekday = $_POST['day'];
}
if( !empty($weekday) ){ ?>
<select name="time" id="time"><?php
for($i = 9; $i < 23; $i+=0.5){?>
<option value="<?php echo $i; ?>"><?php echo $i; ?></option><?php
}?>
</select>
<?php } ?>
解决方案
因此,在我的 *.php 文件中的脚本标签中,我分配了一个带有 PHP 值的 JavaScript 变量,其中包含来自 db 的所有日期记录,例如
<script>
let optionsArr = '<?php echo variable_with_values_from_db ?>'
</script>
然后我可以使用 JavaScript 检查所有内容,并在进一步的输入中更改可能的变体
推荐阅读
- scala - com.typesafe.config.ConfigFactory.load(Config) 做什么?
- javascript - ReactJS:将状态传递给孩子返回未定义
- c++ - clang-analyzer 可能出现误报(垃圾或未定义)
- google-cloud-platform - 将控件 A (\u0001) 分隔文件加载到 Google Big Query
- android - 实现一个简单的 Dagger2 示例
- python - Numpy 从给定的一组索引中检索一系列元素
- java - 使用 Selenium,是否有另一种更可靠的方式在 Headless Chrome 中的元素上使用 click 命令?
- apache-spark - Streamsets 的示例 Spark Evaluator 代码
- azure - Azure CosmosDB SQL API 中的左联接
- c# - c# 输入字符串的格式不正确。Convert.ToDouble(变量)