我有一个做MySQL数据库上查询一些PHP代码 - 如果我做了查询在phpMyAdmin它的作品 - 但如果我在PHP做同样的搜索php和mySQL的日期不起作用 - 与美国vs欧洲结构有关?
从phpMyAdmin的复制它不工作正常工作的回报所有的行
SELECT * FROM contract WHERE DATE(`fdos`) >= '2013-05-01' And DATE(`fdos`) <= '2013-05-09'
我的php代码不工作(无论查询)只返回它应该30行中的3。日期的格式不能改变,这就是我如何获取数据。
$startdate = "2013-05-01";
$enddate = "2013-06-01";
function getAllContracts($startdate, $enddate)
{
$sd = date('Y-m-d', strtotime(str_replace("-","/",$startdate)));
$ed = date('Y-m-d', strtotime(str_replace("-","/",$enddate)));
$query1="SELECT * FROM contract WHERE DATE(`fdos`) >= '$sd' And DATE(`fdos`) <= '$ed'";
$query2="SELECT * FROM contract WHERE DATE(`fdos`) >= Date('$startdate') And DATE(`fdos`) <= Date('$enddate')";
}
其他东西补充的是,我的MySQL存储日期为这种格式“2013年5月1日”一文,这就是为什么我要叫DATE
是那应该是05年1月5日 - 9月5日? – Fabio 2013-04-20 15:10:19
?不知道你在哪里得到了九月......但那可能是2013年第一季度到2013年6月1日 – morty346 2013-04-20 15:13:45
变量$ startdate和$ enddate,它们来自哪里?表单提交? – 2013-04-20 15:20:50