1

以下のクエリは機能し、結果を返します

$query = "SELECT * FROM table WHERE District = '" . $var . "' ORDER BY Form_Date DESC";

「地区」という単語を変数に置き換えた場合、機能しません

$query = "SELECT * FROM table WHERE '" . $distvar . "' = '" . $var . "' ORDER BY Form_Date DESC";

これの何が問題なのですか?どうすれば機能させることができますか?

4

2 に答える 2

5

テストしているフィールドを囲む引用符を削除するか、バッククォートに置き換えて、mysql パーサーが予約語と間違えるのを防ぎます。

$query = "SELECT * FROM `table` WHERE `" . $distvar . "` = '" . $var . "' ORDER BY Form_Date DESC";
于 2012-11-29T20:11:37.733 に答える
1

これを試して :

$query = "SELECT * FROM table WHERE `" . $distvar . "` = '" . $var . "' ORDER BY Form_Date DESC";

また

$query = "SELECT * FROM table WHERE " . $distvar . " = '" . $var . "' ORDER BY Form_Date DESC";
于 2012-11-29T20:16:19.950 に答える