【发布时间】:2016-10-02 22:12:43
【问题描述】:
我已经阅读了这里和其他网站上的数百篇文章。我对 PHP 和 mysql 并不太熟悉,但我已经在 mysql 中构建了我的表,使用单个清单调用它们并根据日期和时间过滤它们。但是,在多复选框领域,我似乎无法确定我在数组代码和自定义结果表中做错了什么。这是基本的html:
<html> <body> <form method="POST" action="php/minute_feedback.php">
Date: <input type="text" name="from_date" id="from_date" value="2016-04-07">
<input type="checkbox" name="check_list[]" value="gate" id="gate">
<input type="checkbox" name="check_list[]" value="pressure" id="pressure">
<input type="checkbox" name="check_list[]" value="flow" id="flow">
<input type="submit" name="submit" value="submit">
这是基本的 PHP(我将只包含日期参数与日期和时间以使其更短,因为包含的内容是相同的):
<?php
$servername = "myhostaddress.com";
$username = "myusername";
$password = "mypassword";
$dbname = "mydatabasename";
$conn=new mysqli($servername, $username, $password, $dbname);
if ($conn->connect_error) {
die("Connection failed: " . $conn->connect_error);}
if($_POST['submit'] == "submit") {
$from_date = ($_POST['from_date']);
$to_date = ($_POST['from_date']);}
if(isset($_POST['submit'])) {
现在...我知道这里应该有某种数组代码,例如:
$checklist[] = $_POST[check_list];
但是 - 我不确定正确的语法/代码是什么。 下一个问题是关于我的查询。我见过大多数使用 WHERE + IN 组合和 '*' 进行 SELECT 的查询。但是,我需要更接近:
$sql = "SELECT Fdate, Ftime, (list of variable columns from the checked options such as 'gate', 'pressure', 'flow' --> but only if they've been checked) FROM minute_db WHERE Fdate BETWEEN '$from_date' AND '$to_date'";
$result = $conn->query($sql);}
if ($result->num_rows > 0) {
现在 - 至于我的表头,如果我要查找单个值,我可以使用以下代码:
echo "<table><tr><th>Date</th><th>Time</th><th>Level (ft)</th></tr>";}
但是,我需要用检查项目的结果(1、2 或 3 个或更多变量,根据需要)加上日期和时间记录来动态填充标题。
echo "<table>";}
else {
echo "0 results";}
$conn->close();
?>
我的最终结果是用户可以输入日期和时间范围并选择要显示的数据,例如,如果他们只想知道 2016 年 4 月 7 日的闸门设置和压力,他们会输入该日期并选中这两个框,以便他们获得一个表格(下面没有格式 - 只是试图表示),例如:
Date | Time | Gate Setting | Pressure
----------------------------------------------------
2016-04-07 | 11:00 | 21 | 50
我最终将拥有一张包含数万行数据可供选择的表格(并将包括对可提取数据量的限制),以及最多 56 列可供选择的变量。我没有使用任何特殊/花哨的数学函数来对时间段等进行分组 - 我已经手动将其全部分离并上传了,因此可以使用了。我从互联网上尝试了很多不同的解决方案,但最终都失败了。 SELECT 的 * 选项看起来不像我,IN 选项也不是 - 但我不确定(只是推测因为两者都没有工作)。我在一个 netfirms mysql 平台上,所以它已经更新了(我会将所有内容都更改为 mysqli 以避免因不使用它而引起的任何问题 - 所以任何提前反馈都会很棒!!。我很感激任何想法你有!
【问题讨论】:
标签: php mysql checkbox html-table display