php - Mysql 数据库 - 使用下拉框和搜索字段对数据输出进行排序

标签 php mysql database forms select

我想我不知道如何提出正确的问题,所以最后几个小时没有带来任何结果......:-( 这是我的工作:
我有公寓业主的数据库和列出他们的页面。一切正常,看起来都很好。
现在我想:
一个选择字段或下拉框,其中包含选择某些公寓类型的选项
假设仅显示 2-4 人的公寓。 在 appartement 数据库中有一个表,其中包含一个类似 for_max_people
的字段
表格如下:

--------------------------------------------------------------------------<br>

id |名称 |年 |主页 |最大人数 |
1||红色 | 2017 | 2017 www.page1.html   | 2-4 | 2-4
2 | |蓝色 | 2016 | 2016 www.page2.html | | 1-2 | 1-2
3 | |灰色 | 2014年| www.page3.html | 2-4 | 2-4
-------------------------------------------------- ------------------------

所以标准 View 将是所有公寓 - (~ 300) 但我希望有一个选项来选择某些参数。

<form class="form-horizontal">
<select id="selectbasic" name="selectbasic" class="form-control">
  <option value="2-4">App. 2-4 People</option>
  <option value="4-6">App. 3-6 People</option>
</select>
</form>

所以, 我的问题不是关于如何从数据库中填充选择字段...... 而是如何执行查询,该选择将更改显示的公寓的表格网格的 View ...

希望这是可以理解的......

问题是什么??? 我可以(!!!)谷歌它,但我总是得到一个解决方案来填充选择/下拉字段!

要搜索什么表达/单词? 当然, fiddle 就完美了...

马丁

最佳答案

您可以使用选择的 onchange 事件并调用根据所选选项更改值的函数。

<select id="selectbasic" name="selectbasic" class="form-control" onchange="updateTable();">

updateTable函数中,您从数据库请求新数据,然后将它们放入表中。请求新数据时,您应该将过滤器作为参数传递,例如data.php?filter=2-4

对于 SQL 查询:您可以使用 WHERE 条件,并仅选择 for_max_people 列的值等于您输入的值的结果。

注意:请确保使用准备好的声明并验证您的用户输入,您不知道恶意用户可能会向您发送什么内容。使用 PDO 是实现此目的的一个好方法。

关于php - Mysql 数据库 - 使用下拉框和搜索字段对数据输出进行排序,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/46115378/

相关文章:

javascript - 如何将日期选择器值传递给 Controller ​​?

php - MySQL:获取每个选定行的相关结果

PHP - mysqli_stmt 类的对象无法转换为字符串

sql - 如何选择多行文本作为不同的单行文本?

ios - 在 ios 设备上存储大型动态数据库还是只进行 rest api 调用?

php - Laravel orderBy 带时区的日期时间

php - 如何为 mysql 创建一个函数

python - postgres - 无法使用 psycopg2 删除数据库

php - 注册后收不到邮件

mysql - 如何更改从特定数字开始的值