0

请帮助我如何从 mysql 中检索数据,在我的 sql 查询中有一个变量。我的 php 代码是

$status=$_GET['status'];
$query="SELECT * FROM students WHERE status='$status' ";

当我运行查询 mysql 生成

 unknown column 'Lead'

其中 Lead 是 $status 的值。我用 \'$status\' , '{$status}' 尝试过,但同样的错误。请帮助我,我从昨天开始就在努力,但没有找到解决方案。我尝试了 mysql_real_escape_string() 但同样的错误..可能是我使用错误的语法。

  $query="SELECT * FROM students WHERE status=".mysql_real_escape_string($status);

提前致谢....

4

2 回答 2

1
$status=$_GET['status'];
$query="SELECT * FROM students WHERE status='".$status."'";

转义是一个好主意,但我认为 mysql_escape_string 已被弃用并且不鼓励使用它,您应该始终使用mysql_real_escape_string.

于 2012-10-08T21:36:38.410 回答
0

恐怕'status'是sql的保留字:见http://drupal.org/node/141051

尝试:

$status = mysql_real_escape_string($status)

$query = "SELECT * FROM `students` WHERE `status` = '$status'";

于 2012-10-08T21:12:49.447 回答