用php参数构建一个sql查询字符串

时间:2011-11-23 12:29:30

标签: php sql

我正在尝试这样做,但它返回null?

$query_1=$field_name[0]."='{".$field_value[0]."}'";

然后

getType = mysql_query("SELECT * FROM wines WHERE $query_1") or die(mysql_error());

如果我喜欢这样的话:

 $getType = mysql_query("SELECT * FROM wines WHERE $field_name[0]='{$field_value[0]}'") or die(mysql_error());

它工作正常。

这是可能的,还是我错过了一些太明显的东西? 提前谢谢你!

2 个答案:

答案 0 :(得分:1)

你正在以错误的方式构建它。您绝不应在SQL查询中使用大括号(或任何其他字符串)。改为连接你的查询。

像这样:

$query_1=$field_name[0]."='".$field_value[0]."'";

哦,你在查询之前错过了一个$,这就是为什么它是null。

答案 1 :(得分:1)

这对我有用:

$field_name[0] = "test";
$field_value[0] = "someting";
$query_1=$field_name[0]."='".$field_value[0]."'";
echo ("SELECT * FROM wines WHERE $query_1") or die(mysql_error());

希望有所帮助