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 回答