检查变量是否与SQL中的表行匹配

时间:2014-05-09 14:38:48

标签: mysql

我已尝试了一百万种不同的解决方案,似乎无法想出这一点。我(现在)只是尝试从数据库中提取所有实例,电子邮件和密钥匹配并显示它们但我不断获取 “您的SQL语法有错误;请查看与您的MySQL服务器版本对应的手册,以便在'Key = abaa937f092451741dfe172e51f68f69 AND Email = test@test.com'附近使用正确的语法” 不知道我哪里出错了,但这可能是一个简单的解决方案。

//check if the key is in the database
$check_key = mysqli_query($con, "SELECT * FROM confirm WHERE Key = '$key' AND Email= '$email'")
or die(mysqli_error($con)); 



while($row = mysqli_fetch_array($check_key)) {
  echo $row['Email'] . " " . $row['Key'];
  echo "<br>";
}

1 个答案:

答案 0 :(得分:2)

key是MySQL中的reserved word。要么使用反引号来逃避它,要么使用其他名称。

SELECT * FROM confirm 
WHERE `Key` = '$key' ...