'where子句'中的未知列'Date'

时间:2011-01-19 18:34:46

标签: php mysql

我有以下查询:

select * from invoice WHERE Date >= '$date' AND status='$status'

它返回错误:

Unknown column 'Date' in 'where clause'

我在PHP或MYSQL方面不太好,但我没有看到任何错误。可能有一切都是错的。我需要帮助!

编辑:

$var = $_GET['date1_year'] ."-" . $_GET['date1_month'] ."-" . $_GET['date1_day'];
$query = "select * from invoice WHERE DateOfCreation >= '$var' AND status='$status'";

当然,它已登录(已验证)并且正在执行且没有错误,但也没有正确的结果。我的DateOfCreation是DATE类型,实际上有$ _GET变量。我希望它在$ var。

之前搜索所有记录

2 个答案:

答案 0 :(得分:1)

select * from invoice WHERE DateOfCreation >= '$date' AND status='$status'

虽然它可行,但我鼓励您查看参数化查询以防止SQL注入攻击。见这里:How can I prevent SQL injection in PHP?

答案 1 :(得分:0)

  

表示$ var

之前的所有记录

那么你的意思是呢? (已更改> =至<)

$var = $_GET['date1_year'] ."-" . $_GET['date1_month'] ."-" . $_GET['date1_day'];
$query = "select * from invoice WHERE DateOfCreation < '$var' AND status='$status'";

使用您的编辑,我认为此错误已消失?

  

'where'中的未知列'Date'   条款“