在下拉列表中根据所选过滤器列出数据库值 [英] Listing database values according to the selected filter in dropdown

查看:96
本文介绍了在下拉列表中根据所选过滤器列出数据库值的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!

问题描述

如何过滤下拉列表选项以列出我的表格条目?

How do I filter dropdown options to list my table entries?

HTML过滤器示例:

HTML filter example:

<form action="filter.php" method="post">
  <select name="filter">
    <option>FILTER:</option>
    <option value="alphabetical">ASC</option>
    <option value="date">Date</option>
  </select>
</form>

基本MySQL选择:

SELECT * FROM table ORDER BY name

列出值的基本HTML: / p>

Basic HTML that lists values:

echo '<h1>'.$name.'</h1>
      <h1>'.$date.'</h1>';

第二个过滤器(日期)应该执行一个SELECT,列出所有具有ASC日期的条目。

The second filter (date) should do a SELECT that lists all the entries with ASC dates. The second first one (alphabetical) should do a SELECT that lists all the name's entries by ASC only.

在这种情况下,MySQL SELECT的工作原理是什么?

Any idea of how the MySQL SELECT would work in that case?

推荐答案

html:

<select name="filter" onchange="filter(this.value)">
  <option>FILTER:</option>
  <option value="alphabetical">ASC</option> 
  <option value="date">Date</option> 
</select>
<div id="results"></div>// store the results here


$ b b

Jquery:

function filter(item){
$.ajax({
type: "POST",
url: "filter.php",
data: { value: item},
success:function(data){
  $("#results").html(data);
}
});
}

filter.php: b
$ b

filter.php:

include "connection.php";  //database connection
$fieldname = $_POST['value'];
 if($fieldname=="alphabetical"){
  // if you choose first option
  $query1 = mysqli_query("SELECT * FROM table ORDER BY name ASC"); 
  // echo the results
  }else{
  // if you choose second option
  $query1 = mysqli_query("SELECT * FROM table ORDER BY date ASC");
  // echo the results
}

注意: b>不要忘记包含jquery库。

Note: Do not forget to include jquery library.

这篇关于在下拉列表中根据所选过滤器列出数据库值的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!

查看全文
登录 关闭
扫码关注1秒登录
发送“验证码”获取 | 15天全站免登陆