【问题标题】:Combo Box input to Select MySQL data of current day组合框输入选择当天的 MySQL 数据
【发布时间】:2014-03-09 07:50:24
【问题描述】:

感谢您的帮助。 我有一个日期组合框,可以选择今天和接下来的 6 天。 输出当前设置为仅显示来自 MySQL 的 CURRENTDATE 数据 我的目标是显示不是从当前日期开始的数据,而是从 ComboBox 选择的日期开始的数据。

再次感谢。

<html>
<head>
<title>Connecting MySQL Server</title>

<style>
table,td,th
{
border:1px solid orange;
}
table
{
width:100%;
}
th
{
height:50px;
}
</style>


</head>
<body>
<select name="select" id="select">
<?php
$date = time();
$num_days = 7;
for($i=0; $i<=$num_days; ++$i)
{
$date = mktime(0, 0, 0, date("m") , date("d")+$i, date("Y"));
$date = date('D j M', $date);
echo " <option value='{$date}'>{$date}</option>\n";
}
?>
</select>



<?php
$con=mysqli_connect("localhost","XXXXXXX","XXXXXXX","XXXXXXX");
// Check connection
if (mysqli_connect_errno())
{
echo "Failed to connect to MySQL: " . mysqli_connect_error();
}


$result = mysqli_query($con,"
SELECT *
FROM movies2 
WHERE date = CURDATE()



");



echo "<table border='2'>
<tr>
<th>Movie</th>
<th>Rating</th>
<th>Time</th>
<th>Date</th>
<th>Code</th>
</tr>";

while($row = mysqli_fetch_array($result))
{
echo "<tr>";
echo "<td nowrap>" . $row['movie'] . "</td>";
echo "<td nowrap>" . $row['rating'] . "</td>";
echo "<td nowrap>" . $row['time'] . "</td>";
echo "<td nowrap>" . $row['date'] . "</td>";
echo "<td nowrap>" . $row['code'] . "</td>";
echo "</tr>";
}
echo "</table>";

mysqli_close($con);
?>


</body>
</html>

【问题讨论】:

  • 你知道如何用 PHP 编程吗?

标签: php mysql select combobox


【解决方案1】:

在一般行中,您需要将元素放在表单中,其操作是相同的页面,然后在查询中您需要将 CURDATE() 替换为变量。

此变量是“select”(如果可用)或 CURDATE() 的值。

但是,您需要清理表单变量以避免 sql 注入。

更好的是,使用准备好的语句而不是简单的字符串。因此,您的变量将提供准备好的语句的参数。

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 2011-06-10
    • 2019-09-18
    • 2014-03-15
    • 1970-01-01
    • 2013-11-18
    • 1970-01-01
    • 2018-12-22
    相关资源
    最近更新 更多