前端查询和PHP SQL语句

前端查询和PHP SQL语句,php,mysql,sql,Php,Mysql,Sql,我试图从一个站点提交一个查询,从MySQL数据库中检索某些记录。当我从站点表单执行查询时,当我知道它不是空的时候,我得到mysql\u错误返回“Invalid query:query was empty” $Level = $_POST['level']; $Year = $_POST['year']; $Name = $_POST['name']; $Award = $_POST['award']; $query = mysql_query("SELECT * FROM win

我试图从一个站点提交一个查询,从MySQL数据库中检索某些记录。当我从站点表单执行查询时,当我知道它不是空的时候,我得到mysql\u错误返回“Invalid query:query was empty”

$Level = $_POST['level'];
$Year  = $_POST['year'];
$Name  = $_POST['name'];
$Award  = $_POST['award'];

$query = mysql_query("SELECT *
    FROM wineawards
    WHERE LEVEL = $Level
      OR YEAR = $Year
      OR name = $Name
      OR award = $Award

    ");

$result = mysql_query($query);
不确定我是否遗漏了什么,或者键入了什么错误?

这是怎么回事

$query = mysql_query("SELECT *
    FROM wineawards
    WHERE LEVEL = '$Level'
      OR YEAR = '$Year'
      OR name = '$Name'
      OR award = '$Award'

    ");

$result = mysql_query($query);
$query = mysql_query("SELECT *
  FROM wineawards
  WHERE LEVEL = '" . $Level . "'
  OR YEAR = '" . $Level . "'
  OR name = '" . $Name . "'
  OR award = '" . $Award . "'

 ");

始终检查您发布的值,并用单引号将变量括起来,如“$Level”、“$Year”……和其他anger:您正在使用并且应该使用。您也容易受到现代API的影响,因为它会使您更容易使用。请检查您的POST变量,例如,$Level=isset$\u POST['Level']$_职位[“级别]:;在查询中使用单引号$query=mysql_querySELECT*FROM wineawards,其中LEVEL='$LEVEL'或YEAR='$YEAR'或name='$name'或award='$award';我相信我误解了这个问题,我正在更新我的建议