weixin_45842502 2023-02-27 09:57 采纳率: 33.3%
浏览 37
已结题

按时间筛选数据记录,显示到页面表格

想做一个mysql记账的网页,写入数据库记录和读取数据库记录都写好,写到按月筛选记录的时候难住了!

我想在读取记录页面搞个日期框,按日期筛选数据库记录显示到读取记录页面,数据库里面有个时间戳字段写入的是年月日时间戳,我想让筛选记录的日期框,按月筛时间戳,显示到读取记录页面

读取记录页面是读取的数据库所有记录,显示在表格里,怎么才能有筛选记录的时候只显示筛选记录没有筛选的时候显示所有数据!

求帮忙

  • 写回答

1条回答 默认 最新

  • CodeBytes 2023-02-27 10:20
    关注

    该回答引用ChatGPT

    可以通过在读取记录页面添加一个日期选择器来实现按月筛选记录。用户选择日期后,将该日期传递给后台 PHP 文件,并在 PHP 文件中使用 SQL 查询语句筛选出符合该日期范围内的记录,并将它们显示在表格中。

    以下是一个简单的示例代码:

    HTML 页面:

    
    
    <!DOCTYPE html>
    <html>
    <head>
        <title>账目查询</title>
    </head>
    <body>
        <form action="get_records.php" method="post">
            <label for="month">选择月份:</label>
            <input type="month" id="month" name="month">
            <input type="submit" value="查询">
        </form>
    
        <table>
            <thead>
                <tr>
                    <th>日期</th>
                    <th>金额</th>
                    <th>备注</th>
                </tr>
            </thead>
            <tbody>
                <?php
                    // PHP 代码用于从数据库中读取记录并显示在表格中
                    // 代码略
                ?>
            </tbody>
        </table>
    </body>
    </html>
    
    
    

    PHP 文件 get_records.php:

    
    <?php
    // 连接到数据库
    $servername = "localhost";
    $username = "username";
    $password = "password";
    $dbname = "myDB";
    $conn = new mysqli($servername, $username, $password, $dbname);
    
    // 检查连接是否成功
    if ($conn->connect_error) {
        die("连接失败:" . $conn->connect_error);
    }
    
    // 获取用户选择的月份
    $month = $_POST["month"];
    
    // 使用 SQL 查询语句从数据库中获取符合该月份的记录
    $sql = "SELECT * FROM account WHERE MONTH(FROM_UNIXTIME(timestamp)) = MONTH('$month')";
    $result = $conn->query($sql);
    
    // 显示记录在表格中
    if ($result->num_rows > 0) {
        // 输出每行数据
        while($row = $result->fetch_assoc()) {
            echo "<tr><td>" . $row["timestamp"] . "</td><td>" . $row["amount"] . "</td><td>" . $row["remark"] . "</td></tr>";
        }
    } else {
        echo "0 结果";
    }
    
    $conn->close();
    ?>
    
    

    在上面的示例中,get_records.php 文件获取了用户选择的月份,然后使用 MONTH 函数从数据库中选择符合该月份的记录,并将它们输出到表格中。如果用户没有选择日期,则默认显示所有记录。

    本回答被题主选为最佳回答 , 对您是否有帮助呢?
    评论
    1人已打赏

报告相同问题?

问题事件

  • 系统已结题 3月7日
  • 已采纳回答 2月27日
  • 赞助了问题酬金15元 2月27日
  • 修改了问题 2月27日
  • 展开全部

悬赏问题

  • ¥15 表达式必须是可修改的左值
  • ¥15 如何绘制动力学系统的相图
  • ¥15 对接wps接口实现获取元数据
  • ¥20 给自己本科IT专业毕业的妹m找个实习工作
  • ¥15 用友U8:向一个无法连接的网络尝试了一个套接字操作,如何解决?
  • ¥30 我的代码按理说完成了模型的搭建、训练、验证测试等工作(标签-网络|关键词-变化检测)
  • ¥50 mac mini外接显示器 画质字体模糊
  • ¥15 TLS1.2协议通信解密
  • ¥40 图书信息管理系统程序编写
  • ¥20 Qcustomplot缩小曲线形状问题