让我先说一下,我(显然)是web开发的新手。我要做的是查询mySQL数据库中今天日期的时间范围,如果我硬编码的话,我已经记下了这一部分。我想要的是我的网站每次加载并显示当前日期的数据,然后也有一组下拉框,用户可以选择显示数据的特定日期。以下是目前为止的内容:
在我的index.php页面我有:
$result_date = mysqli_query($link, "SELECT date FROM MyData WHERE
YEAR(date)='$year'AND MONTH(date)='$month' AND DAY(date)='$day'");
如果我使用:
$year=date('Y');
$month=date('n');
$today = getdate();
$day=$today['mday'];
在相同的index.php上,它工作得很好,直到我今天早上醒来,它仍然显示昨天的数据,而不是更新到今天(除非我硬编码2015,7,9)等。
我有另一个页面data.html.php有所有的前端HTML的东西,我已经写了一个下拉菜单和提交按钮的代码,以及其他图形的网站。我认为我需要做的是将年,月和日变量放在该页面上,然后将其传递到index.php页面,但我不确定如何。这是我的表格……省略号是所有的数据选择:
<form action=" ">
<select name="Month">
<option value="01">Jan</option>
...
</select>
<select name="Day">
<option value="1">1</option>
...
</select>
<select name="Year">
<option value="2015">2015</option>
...
</select>
<input id="viewBtn" type="button" value="VIEW" onclick=" " />
</form>
所以我的目标是使用默认日期,除非用户从下拉菜单中选择不同的日期并单击VIEW。我想我需要某种onClick方法,适当的形式的行动和一些方式来传递变量,我只是卡住后谷歌它一段时间了。任何帮助将非常感激!
将表单替换为:
<form action="" method="POST">
输入:
<input id="viewBtn" type="submit" name="submit" value="VIEW" />
尝试添加这个条件:
if(isset($_POST['submit'])){
$year=$_POST['Year'];
$month=$_POST['Month'];
$today = $_POST['Day'];
}else{
$year=date('Y');
$month=date('n');
$today = getdate();
}
$day=$today['mday']-1;
现在默认值是今天日期,如果用户提交,将采用新值。
希望这能回答你的问题