我有一个用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,从而忽略January,然后点击“Submit”,然后页面应重新加载但使用用户定义的数据在查询中而不是默认值。
不要担心让我注意SQL注入,我也在努力!
答案 0 :(得分:1)
疑难杂症。你有几个选择。您可以“提交”而无需使用ajax刷新整个页面...或者您可以使用submit get / post传递所选值,并在页面加载时检查它们是否存在于$ _REQUEST中。如果它们被传入,则使用传入的值,仅当页面加载时$ _REQUEST中不存在新值时才会默认它们。