douwendu2460 2018-12-11 04:58
浏览 24

too long

I need a help in a query rows creating a table through php. Here below is the rows in my mysql table named "routine".

enter image description here

Now i want to fetch through week days in a single loop creating a table like below:

enter image description here

enter image description here

enter image description here

Is it possible with a single loop? Here i want to separate the rows through week and auto columns through time.

  • 写回答

1条回答 默认 最新

  • doutang3077 2018-12-11 08:48
    关注

    Yes! It is possible with single loop but we use php array...

    Try this... Data insertion php coding - insert.php

    <?php
        $servername = "localhost";
        $username = "root";
        $password = "";
        $database = "my_db";
    
        // Create connection
        $conn = new mysqli($servername, $username, $password, $database);
    
        $week = "Friday";
        $subject = "Physics";
        $time = 3;
    
        $sql = "INSERT INTO routine (Week, Subject, Time)VALUES ('".$week."', '".$subject."', '".$time."')";
    
        if ($conn->query($sql) === TRUE) {
            echo "New record created successfully";
        } else {
            echo "Error: " . $sql . "<br>" . $conn->error;
        }
    
        $conn->close();
    
    ?>
    

    Php code for displaying rows through week and auto columns through time - view.php

    <?php
        $servername = "localhost";
        $username = "root";
        $password = "";
        $database = "my_db";
    
        // Create connection
        $conn = new mysqli($servername, $username, $password, $database);
    
        //Initial Declarations
        $data = [];     
    
        $data[0][0] = "<tr><td>Week</td>";
        $data[0][1] = "<tr><td>Monday</td>";
        $data[0][2] = 0;
    
        $data[1][0] = "<tr><td>Week</td>";
        $data[1][1] = "<tr><td>Tuesday</td>";
        $data[1][2] = 0;
    
        $data[2][0] = "<tr><td>Week</td>";
        $data[2][1] = "<tr><td>Wednesday</td>";
        $data[2][2] = 0;
    
        $data[3][0] = "<tr><td>Week</td>";
        $data[3][1] = "<tr><td>Thursday</td>";
        $data[3][2] = 0;
    
        $data[4][0] = "<tr><td>Week</td>";
        $data[4][1] = "<tr><td>Friday</td>";
        $data[4][2] = 0;
    
    
        $sql = "SELECT * FROM routine";
        $result = mysqli_query($conn, $sql);
    
        while($row = mysqli_fetch_array($result, MYSQLI_NUM))       // Table Fields - Week ($row[0]), Subject($row[1]), Time($row[2])
        {
            if($row[0] == "Monday")
            {
                $data[0][0] = $data[0][0] . "<td>" . $row[2] . "</td>";
                $data[0][1] = $data[0][1] . "<td>" . $row[1] . "</td>";
                $data[0][2] = intval($data[0][2]) + 1;
            }
            else if($row[0] == "Tuesday")
            {
                $data[1][0] = $data[1][0] . "<td>" . $row[2] . "</td>";
                $data[1][1] = $data[1][1] . "<td>" . $row[1] . "</td>";
                $data[1][2] = intval($data[1][2]) + 1;
            }
            else if($row[0] == "Wednesday")
            {
                $data[2][0] = $data[2][0] . "<td>" . $row[2] . "</td>";
                $data[2][1] = $data[2][1] . "<td>" . $row[1] . "</td>";
                $data[2][2] = intval($data[2][2]) + 1;
            }
            else if($row[0] == "Thursday")
            {
                $data[3][0] = $data[3][0] . "<td>" . $row[2] . "</td>";
                $data[3][1] = $data[3][1] . "<td>" . $row[1] . "</td>";
                $data[3][2] = intval($data[3][2]) + 1;
            }
            else if($row[0] == "Friday")
            {
                $data[4][0] = $data[4][0] . "<td>" . $row[2] . "</td>";
                $data[4][1] = $data[4][1] . "<td>" . $row[1] . "</td>";
                $data[4][2] = intval($data[4][2]) + 1;
            }
    
        }
    
        //Final Assigning
        $data[0][0] = $data[0][0] . "</tr>";
        $data[0][1] = $data[0][1] . "</tr>";
    
        $data[1][0] = $data[1][0] . "</tr>";
        $data[1][1] = $data[1][1] . "</tr>";
    
        $data[2][0] = $data[2][0] . "</tr>";
        $data[2][1] = $data[2][1] . "</tr>";
    
        $data[3][0] = $data[3][0] . "</tr>";
        $data[3][1] = $data[3][1] . "</tr>";
    
        $data[4][0] = $data[4][0] . "</tr>";
        $data[4][1] = $data[4][1] . "</tr>";
    
    
        // Display Result
        if($data[0][2] > 0)
            echo "<table border='1' cellspacing = 0 cellpadding = '4'>".$data[0][0] . $data[0][1] . "</table><br>";
        if($data[1][2] > 0)
            echo "<table border='1' cellspacing = 0 cellpadding = '4'>".$data[1][0] . $data[1][1] . "</table><br>";
        if($data[2][2] > 0)
            echo "<table border='1' cellspacing = 0 cellpadding = '4'>".$data[2][0] . $data[2][1] . "</table><br>";
        if($data[3][2] > 0)
            echo "<table border='1' cellspacing = 0 cellpadding = '4'>".$data[3][0] . $data[3][1] . "</table><br>";
        if($data[4][2] > 0)
            echo "<table border='1' cellspacing = 0 cellpadding = '4'>".$data[4][0] . $data[4][1] . "</table><br>";
    
    ?>
    
    评论

报告相同问题?

悬赏问题

  • ¥20 机器学习能否像多层线性模型一样处理嵌套数据
  • ¥20 西门子S7-Graph,S7-300,梯形图
  • ¥50 用易语言http 访问不了网页
  • ¥50 safari浏览器fetch提交数据后数据丢失问题
  • ¥15 matlab不知道怎么改,求解答!!
  • ¥15 永磁直线电机的电流环pi调不出来
  • ¥15 用stata实现聚类的代码
  • ¥15 请问paddlehub能支持移动端开发吗?在Android studio上该如何部署?
  • ¥20 docker里部署springboot项目,访问不到扬声器
  • ¥15 netty整合springboot之后自动重连失效