如何在 PHP 编码中放置 HTML table

How do you place a HTML table inside a PHP coding

我一直在尝试将 html table 插入到 PHP 代码中。这样回波数据(例如,空气读数)可以显示在 table 中。请帮忙。

    <?php
$page = $_SERVER['PHP_SELF'];
$sec = "100000000000000000";
header("Refresh: $sec; url=$page");
?>


<?php

    $server = "localhost";
    $user = "root";
    $password = "";
    $database = "sensors_hub";

// Create connection
$conn = new mysqli($server, $user, $password, $database);
// Check connection
if ($conn->connect_error) {
     die("Connection failed: " . $conn->connect_error);
}

$sql = "SELECT air_reading, co2_reading, gas_reading, humid_reading, temp_reading FROM sensor_001 ORDER BY time DESC LIMIT 1";
$result = $conn->query($sql);

if ($result->num_rows > 0) {
     // output data of each row
     while($row = $result->fetch_assoc()) {
         echo "<br> Air Reading: ". $row["air_reading"]. "  Carbon Dioxide Reading: ". $row["co2_reading"]." Gas Reading: ". $row["gas_reading"]. " Humidity Reading: ". $row["humid_reading"]. " Temp Reading: ". $row["temp_reading"]. "<br>";

     }
} else {
     echo "0 results";
}

$conn->close();
?>
  • while() 循环
  • 之上开始你的 table
  • while() 循环中添加 table 行
  • while() 循环后结束 table
echo "<table>
        <tr>
          <th>Air Reading</th>
          <th>Carbon Dioxide Reading</th>
          <th>Gas Reading</th>
          <th>Humidity Reading</th>
          <th>Temp Reading</th>
        </tr>";
if ($result->num_rows > 0) {
     // output data of each row
     while($row = $result->fetch_assoc()) {
         echo "<tr>
                <td>". $row["air_reading"]. "</td>
                <td>". $row["co2_reading"]."</td>
                <td> ". $row["gas_reading"]. "</td>
                <td>". $row["humid_reading"]. "</td>
                <td>". $row["temp_reading"]. "</td>
               </tr>";
     }
} else {
     echo "<tr><td colspan='5'>0 results</td></tr>";
}
echo "</table>";
echo "<table>";
echo "<tr>";
  echo "<td>Air Reading:</td>";
  echo "<td>Carbon Dioxide Reading:</td>";
  echo "<td>Gas Reading:</td>";
  echo "<td>Humidity Reading:</td>";
  echo "<td>Temp Reading:</td>";
echo "</tr>";
if ($result->num_rows > 0) {
 while($row = $result->fetch_assoc()) {
   echo "<tr>";
     echo "<td> ". $row["air_reading"]. "</td>";
     echo "<td> ". $row["co2_reading"]. "</td>";
     echo "<td> ". $row["gas_reading"]. "</td>";
     echo "<td> ". $row["humid_reading"]. "</td>";
     echo "<td> ". $row["temp_reading"]. "</td>";
     }
  echo "</tr>";
} else {
   echo "0 results";
}

echo "</table>";

这可能是最费力的,但也是最容易理解的。

如果你想做得更聪明,像这样:

?><table>
  <tr>
  <td>Air Reading:</td>
   <td>Carbon Dioxide Reading:</td>
   <td>Gas Reading:</td>
   <td>Humidity Reading:</td>
   <td>Temp Reading:</td>
 </tr> 
 <?
 if ($result->num_rows > 0) {
   while($row = $result->fetch_assoc()) {
       ?>
         <tr> 
           <td><?=$row["air_reading"]?></td> 
           <td><?=$row["co2_reading"]?></td> 
           <td><?=$row["gas_reading"]?></td> 
           <td><?=$row["humid_reading"]?></td> 
           <td><?=$row["temp_reading"]?></td> 

         </tr> 
       <?
     }
 } else {
   ?>0 results<?
 }
?>

 </table> 
if ($result->num_rows > 0) {
    ?>
    <table>
    <tr>
        <th>Air Reading<th>
        <th>Carbon Dioxide Reading<th>
        <th>Gas Reading<th>
        <th>Humidity Reading<th>
        <th>Temp Reading<th>
    </tr>
    <?PHP while($row = $result->fetch_assoc()) { ?>
    <tr>
        <td><?php= $row["air_reading"] ?></td>
        <td><?php= $row["co2_reading"] ?></td>
        <td><?php= $row["gas_reading"] ?></td>
        <td><?php= $row["humid_reading"] ?></td>
        <td><?php= $row["temp_reading"] ?></td>
    </tr>
    <?PHP } ?>
} else {
    echo "0 results";
}

你需要在 while 循环之上创建 table,并在它之后结束 finishes.My 答案与 hd 类似,但我发现这种方式更有用:

$table = "<table>";
$table .= "<tr><td>Row 1</td></tr>";

$i = 0;

if ($result->num_rows > 0) {
     // output data of each row
     while($row = $result->fetch_assoc()) {
              $table .= "<tr><td>Col 1</td></tr>";
     }

} 

$table .= "</table>";

echo $table;

我更喜欢这种方式的原因是它使您的 HTML 代码更易于阅读,因为您现在可以在 HTML 代码中回显 table,而不是执行HTML.

中间的整个 PHP 脚本