0

クエリ文字列からの変数があります (安全に実行したことを心配しないでください)。SQLクエリに変数を追加する方法を教えてください。私の変数:

$order = "ASC";
if(isset($_POST['sort'])){
    if($_POST['sort']=="date"){
        $sort = "date";
    }
    else if($_POST['sort']=="pricelow"){
        $sort = "Price";
    }
    else if($_POST['sort']=="pricehigh"){
        $sort = "Price";
        $order = "DESC";
    }
}

そして、以下の私のクエリ:

 mysql_query("SELECT * FROM event ORDER BY '$sort' '$order'");
4

2 に答える 2

0

私はあなたがそれをカバーしていると思います.単純な変更だけで、ソート変数と順序変数の周りからSQL内の一重引用符を削除します.

mysql_query("SELECT * FROM event ORDER BY $sort $order")

補足: mysql は非推奨です。mysqli または PDO を使用することをお勧めします。

于 2013-08-31T20:50:07.667 に答える
-2
mysql_query("SELECT * FROM event ORDER BY " . $sort . " " . $order);

または、次のように割り当てを変更します。

$order = " DESC";

そして、あなたは使用することができます:

mysql_query("SELECT * FROM event ORDER BY " . $sort . $order);
于 2013-08-31T20:49:58.357 に答える