日期的PHP MS SQL占位符
问题描述:
如何将日期传递到PHP和MS SQL的占位符?日期的PHP MS SQL占位符
我使用的示例代码:
$fromDate = '2013-01-01';
$toDate = '2013-02-28';
$empno = 12345;
$sqlStr = "SELECT * FROM histTable WHERE EmpNum = ?
AND toDate >= ? AND fromDate <= ?";
$sqlResult = $this->db->query($sqlStr, $empno, $fromDate, $toDate);
我无法从数据库,除非我硬编码的日期值得到任何东西。
任何人都可以请帮忙吗?
谢谢。
答
尝试......
$fromDate = '2013-01-01 00:00:00';
$toDate = '2013-02-28 00:00:00';
$empno = 12345;
$sqlStr = "SELECT * FROM histTable WHERE EmpNum = $empno
AND toDate >= '$fromDate' AND fromDate <= '$toDate'";
$sqlResult = $this->db->query($sqlStr);
+0
希望我可以但我必须使用占位符。 – Jamie 2013-02-14 12:56:20
答
直把我的头顶部,尝试改变:
$sqlStr = "SELECT * FROM histTable WHERE EmpNum = ? AND toDate >= ? AND fromDate <= ?";
到
$sqlStr = "SELECT * FROM histTable WHERE EmpNum = ? AND toDate >= '?' AND fromDate <= '?'";
答
所有在 '' 或“ “我宁愿用”“;
$fromDate = '2013-01-01';
$toDate = '2013-02-28';
$empno = 12345;
$sqlStr = "SELECT * FROM histTable WHERE EmpNum = ?
AND toDate >= '{$fromDate}' AND fromDate <= '{$toDate}' ";
$sqlResult = $this->db->query($sqlStr, $empno, $fromDate, $toDate);
介意围绕变量的逗号。
即时猜测你的MySQL有列作为数据类型或时间戳和你传递一个字符串 – 2013-02-14 12:07:45
http://stackoverflow.com/questions/10435109/sql-query-escaping-codeigniter – tomexsans 2013-02-14 12:12:19