2014-10-30 43 views
0

任何人都可以告诉我如何编写代码来搜索一段时间。 例如,在我的数据库,我有start_timeend_time这样的:两次搜索(例如14:00:00 - 16:00:00)

start_time end_time 
14:00:00  16:00:00 

我有PHP代码搜索,如果我把在文本字段中找到的时间14:00:0016:00:00,但

我的问题是如何获得相同的结果,如果用户搜索它之间的时间?

例如,如果用户搜索的时间为15:00:00 to 16:00:00

对不起,我的英文.. hope有人可以帮助我..谢谢。

下面是我的代码。

FORM

 <input name="intime" type="time" placeholder='Insert Time'> 
     <input name="intime2" type="time" placeholder='Insert Time'> 
     <input name="submit" type="submit" value="SEARCH" /> 

     </form> 

+0

$ query =“SELECT start_time,end_time \t from start where time_time like'%$ intime%'AND end_time like'%$ intime2%'”; – anonymous 2014-10-30 10:11:26

+0

我怎样才能将您刚才​​给出的代码添加到James Lalor上面的代码中? – anonymous 2014-10-30 10:12:28

回答

1

既然你两个时间之间找时间,我们可以使用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%'" : ""); 
+1

更新了一些更多的信息,好的解释不是我的特长。 – 2014-10-30 10:01:32

+0

$ query =“SELECT start_time,end_time from start_time like'%$ intime%'AND end_time like'%$ intime2%'”; – anonymous 2014-10-30 10:30:50

+0

我如何将刚才给出的代码添加到James Lalor上面的代码中? – anonymous 2014-10-30 10:31:19

1

其中START_TIME和END_TIME之间的时间;