0

我有一个用 PHP 编写的页面,它在所有月份和两个特定年份运行 MySQL 查询。当您转到该页面时,会出现一个包含结果数据的表格。

我想做的是,在给用户这个默认数据之后,让他们选择他们想要查看数据的月份/年份。所以,我需要让他们的下拉选择(默认为 2011 年 1 月到 2012 年 12 月)影响显示的数据。我正在使用 WordPress,但这不是 WordPress 特定的。

所以,我现在在 PHP 中运行的查询(一些字段被匿名以保护无辜者)是:

    SELECT * 
    FROM database.table
    Where MonthNum >=1
    AND MonthNum <=12
    AND Year >=2011
    AND Year <=2012

但我想做的是在运行查询的 HTML 中创建四个输入字段作为下拉菜单。它们是 MonthMin(默认 1)、MonthMax(默认 12)、YearMin(默认 2011)、YearMax(默认 2012)。因此,查询将是:

    SELECT * 
    FROM database.table
    Where MonthNum >= MonthMin
    AND MonthNum <= MonthMax
    AND Year >= YearMin
    AND Year <= YearMax

而且因为它是从默认日期提取的,所以输出将与第一个查询相同。但是,我想做的是允许用户选择一组不同的日期,比如将 MonthMin 设置为 2,从而忽略一月,然后点击“提交”,然后页面应该重新加载但使用用户定义的数据在查询中而不是默认值。

不要担心教我 SQL 注入,我也在努力!

4

1 回答 1

1

明白了。你有几个选择。您可以“提交”而无需使用 ajax 刷新整个页面......或者您可以使用提交 get/post 传递选定的值,并在页面加载时在 $_REQUEST 中检查它们是否存在。如果它们被传入,则使用传入的值,只有当页面加载时 $_REQUEST 中不存在新值时,才默认它们。

于 2012-06-08T19:01:28.827 回答