用php发送sql请求

时间:2016-05-30 21:53:34

标签: php jquery mysql

我有一个表和index.php。我可以使用sql查询填充表列。查询不包括排序。后来我添加了一个排序按钮。当我点击按钮时,我想用查询进行排序。

$query="SELECT city, street, city_v,street_v,id_seq_x,page_title, 
page_url, uniq_key, price, currency, to_char(date, 'DD-MM-YYYY') AS date,situation, 
situation_v, categories,categories_v FROM information";

是我的疑问。我填写了表格列。后来我想运行这个查询。

$query2="order by price";
$query_last=$query.$query2;

单击按钮时如何运行此查询?例如:

$("#btn").click(function(){
  window.location.href="index.php?sort="+$query_last;});

我希望我能解释得足够多。

1 个答案:

答案 0 :(得分:1)

您需要使用$_GET变量从网址中提取排序值。

在你的情况下,这将是:

$query2 = isset($_GET['sort']) ? $_GET['sort'] : false;

如果sort为空,$query2将为false。如果没有,它将具有此值:订购%020by%20price

此查询不起作用,除非您explode %20上的字符串,然后再次内爆它以在单词之间添加空格(嗯,我想;我不确定是否% 20将被解析为空格... ...

所以我建议你这样使用它:

$query2 = isset($_GET['sort']) ? $_GET['sort'] : false;

点击按钮后显示jquery:

$("button").click(function() {
    window.location = 'index.php?sort=true'; 
});

如果排序为真,你可以用if else语句检查:

if ($query2) {
    $query2 = 'order by price'; // re-assign the variable another value
    $sql = $query . ' ' . $query2 // Notice the space between the queries
} 

之后,您可以使用新的格式化查询来提取数据。