0

WHERE ステートメントの一部として配列内の値を使用する mysql クエリがあります。この変数を含めるにはどうすればよいですか?

SQLは次のとおりです。 "AND gender = '{$user_array[\"gender\"]}'"

PHP は次のエラーを返します。Parse error: syntax error, unexpected T_CONSTANT_ENCAPSED_STRING, expecting T_STRING

magic_quotesオンにしました。配列の値を別の変数に設定することを提案する投稿を見たことがありますが、魔法の引用符がある場合は不要のようです。これは正しいです?

4

3 に答える 3

0
"AND gender = '{$user_array['gender']}'"

それを殺していたのはバックスラッシュでした。

または、次のこともできます。

"AND gender = '$user_array[gender]'"

または:

"AND gender = '" . $user_array['gender'] ."'"

デモ: http://codepad.org/lrJllI1K

しかし、これらすべてをまとめると、準備されたクエリを使用する必要があります

于 2012-12-26T20:11:26.467 に答える
0

別の方法として、PHP で文字列の連結を実行し、SQL を二重引用符で囲みます。これにより、問題が解決する場合があります。

"AND gender = '" . $user_array['gender'] . "'...
于 2012-12-26T20:13:43.190 に答える
0

クエリ全体を入れて、double quotes好きなことをするだけですAND gender = '$user_array['gender']'

于 2012-12-26T20:11:21.313 に答える