美好的一天!我正在尝试创建一个"按日期搜索"我的网站中的选项将检索数据库中的日期与用户匹配的记录'输入。我有这些选择框:
<!-- FROM -->
<select name="from_month" id="from_month">
<option selected>-- MONTH --</option>
<option value="january">January</option>
...
<option value="december">December</option>
</select>
<select name="from_day" id="from_day">
<option selected>-- DAY --</option>
<?php $i = 1;
while ($i <= 31) {
echo '<option value="'.$i.'">'.$i.'</option>';
$i++;
}
?>
</select>
<select name="from_year" id="from_year">
<option selected>-- YEAR --</option>
<?php $i = date('Y');
while ($i <= 2040) {
echo '<option value="'.$i.'">'.$i.'</option>';
$i++;
}
?>
</select>
<!-- FROM (END) -->
<!-- TO -->
<select name="to_month" id="to_month">
<option selected>-- MONTH --</option>
<option value="1">January</option>
...
<option value="12">December</option>
</select>
<select name="to_day" id="to_day">
<option selected>-- DAY --</option>
<?php $i = 1;
while ($i <= 31) {
echo '<option value="'.$i.'">'.$i.'</option>';
$i++;
}
?>
</select>
<select name="to_year" id="to_year">
<option selected>-- YEAR --</option>
<?php $i = date('Y');
while ($i <= 2040) {
echo '<option value="'.$i.'">'.$i.'</option>';
$i++;
}
?>
</select>
<!-- TO (END) -->
我原本打算做的是从_&#34;中获取所有&#34;将值存储到变量&#39; $来自&#39;。 &#34;到_&#34;也是如此。因为我的日期数据库如下所示:
id | title(text) | date_submitted(date) |
1 | Lorem Ipsum | 2015-01-20 |
如何实现这一点,我们将不胜感激。提前谢谢!
答案 0 :(得分:1)
既然您知道日期的每一部分,MySQL的BETWEEN
就可以解决问题:
SELECT * FROM db WHERE mydate BETWEEN 'from_date' AND 'to_date'
from_date 和 to_date 是您的变量,请浏览表单。
正如@AnoopS所述,使用数字来评估您的月份框。
请记住使用预先准备好的语句,使用 mysqli 或 PDO 进行注射。