这里的任何人都能告诉我如何编写代码来搜索一段时间吗。例如,在我的数据库中,我有这样的start_time
和end_time
:
start_time end_time
14:00:00 16:00:00
如果我在文本字段中输入时间14:00:00
到16:00:00
,我有php代码来搜索它,但
我的问题是,如果用户搜索两者之间的时间,我如何才能得到相同的结果?
例如,如果用户搜索时间15:00:00 to 16:00:00
。
对不起我的英语。。希望有人能帮我谢谢。
下面是我的代码。
形式
<input name="intime" type="time" placeholder='Insert Time'>
<input name="intime2" type="time" placeholder='Insert Time'>
<input name="submit" type="submit" value="SEARCH" />
</form>
其中时间介于start_time和end_time之间;
由于您要查找两个时间之间的时间,我们可以在查询中使用AND子句,使用大于(等于)和小于(等于)-这将返回等于两个表单输入(intime和intime2)的结果以及它们之间的结果。
WHERE time >= $intime AND time <= $intime2
至于你在问什么,你试过了吗。。。
$intime = (isset($_POST['intime']) ? $_POST['intime'] : 0);
$intime2 = (isset($_POST['intime2']) ? $_POST['intime2'] : 0);
$query = "SELECT start_time, end_time FROM reservation WHERE" .
($intime ? " start_time >= '%$intime%'" : "") .
($intime && $intime2 ? " AND" : "") .
($intime2 ? " end_time <= '%$intime2%'" : "");