在两个日期之间选择使用php的ms访问
我想使用php从ms访问中选择数据 这是我的代码:
i want to select data from ms access using php here is my code :
$dbdir = "D:\payroll2\ATT2000.MDB";
$conn = odbc_connect("DRIVER=Microsoft Access Driver (*.mdb);DBQ=$dbdir",
"administrator",
"");
$b = 4104;
$jo = date('n/j/Y h:i:s A',strtotime('2016-01-21 00:00:01'));
$ji = date('n/j/Y h:i:s A',strtotime('2016-01-21 23:59:59'));
$sql = "SELECT TOP 20 * from CHECKINOUT inner join USERINFO on CHECKINOUT.USERID = USERINFO.USERID where USERINFO.SSN = '$b'";
$rs = odbc_exec($conn,$sql);
odbc_fetch_row($rs, 0);
while (odbc_fetch_row($rs)) {
echo odbc_result($rs,"CHECKTIME"); print('<br>');
}
odbc_close($conn);
}
它工作正常,但我想在两个日期之间选择数据
所以我将AND CHECKINOUT.CHECKTIME between '$jo' and '$ji'
像这样添加到查询中:
it works fine , but i want to select data between two dates
so i add AND CHECKINOUT.CHECKTIME between '$jo' and '$ji'
into the query like this :
$sql = "SELECT TOP 20 * from CHECKINOUT inner join USERINFO on CHECKINOUT.USERID = USERINFO.USERID where USERINFO.SSN = '$b' AND CHECKINOUT.CHECKTIME between '$jo' and '$ji'";
我不知道为什么它不起作用, 我确定数据存在并且我的日期格式像ms访问日期格式一样一直存在.
i dont know why it doest work, im sure the data is exist and my date format was persist like the ms access date format.
任何帮助将不胜感激, 对不起,我的英语不好.
any help will appreciated, im sorry for my bad english..
使用MSAccess&我还认为MS SQL Server还需要在日期周围使用哈希符号,并且可能还需要使用CDate()
来确保将日期识别为日期.
With MSAccess & MS SQL Server also I believe you need to use hash signs around the dates and you might also need to use CDate()
to ensure the date is recognised as a date.
$sql = "SELECT TOP 20 * from CHECKINOUT
inner join USERINFO on CHECKINOUT.USERID = USERINFO.USERID
where USERINFO.SSN = '$b' AND CDate( CHECKINOUT.CHECKTIME ) between '#{$jo}#' and '#{$ji}#'";