0

我不断收到1054 - Unknown column 'apa_calda' in 'where clause'MySQL 中的错误。这是查询:

SELECT user_id FROM `detalii_contor` WHERE tip_contor=apa_calda

我想在 PHP 文件中使用这个查询,但它没有给出任何结果。所以我尝试在SQL命令提示符下编写它。这是我在 PHP 文件中尝试的内容:

$Q = "SELECT id_contor, den_contor FROM detalii_contor WHERE tip_contor='".$contor."'";

$Q = "SELECT id_contor, den_contor FROM detalii_contor WHERE tip_contor='$contor'";

即使没有""或没有''

我想$contor从一个表格中得到。我也试过$_POST['util']and {$_POST['util']}。我也尝试设置$contor我需要的值,但没有结果。

4

3 回答 3

4

字段值应该用引号引起来。
SELECT user_id FROM detalii_contor WHERE tip_contor='apa_calda'

顺便说一句,您应该始终逃避来自用户的一切。例如,

$mysqli = new mysqli("host", "user", "password", "db");
$contor = $mysqli->real_escape_string($_POST['util'] );
$result = $mysqli->query(SELECT id_contor, den_contor FROM detalii_contor WHERE tip_contor='$contor'");

于 2010-05-28T15:53:38.700 回答
1

mysql 意味着 apa_calda 是一个列名。如果它是一个值,请引用它

SELECT user_id FROM detalii_contor WHERE tip_contor='apa_calda'

关于 $_POST['util'] - 尝试使用 $_REQUEST - http://php.net/manual/en/reserved.variables.request.php

于 2010-05-28T15:44:43.340 回答
0

你可能在函数中设置了 $contor 吗?那么你应该使用指令“global”

于 2010-05-31T08:31:09.740 回答