数据从数据库进入表(无法弄清楚怎么做布局)

时间:2014-10-22 00:08:44

标签: php html html5 mysqli html-table

这是我的代码(可怕的代码):

    

<?php

include 'connect/con.php';

$result = mysqli_query($con,"SELECT id, vidTitle FROM newsvid");
$result1 = mysqli_query($con,"SELECT imgCover, vidSD FROM newsvid");
$result2 = mysqli_query($con,"SELECT published FROM newsvid");




echo "<table width=\"600\" border=\"1\"><tbody>";
while($row = mysqli_fetch_array($result)) {
  echo "<tr>";
  echo '<td width=\"10%\"><a href="details.php?id='.$row['id'].'">'.$row['id'].'</a></td>';
  echo "<td width=\"90%\">" . $row['vidTitle'] . "</td>";
  echo "</tr>";
}
echo "</tbody></table>";


echo "<table width=\"600\" border=\"1\"><tbody>";
while($row = mysqli_fetch_array($result1)) {
  echo "<tr>";
  echo "<td width=\"40%\">" . $row['imgCover'] . "</td>";
  echo "<td width=\"60%\">" . $row['vidSD'] . "</td>";
  echo "</tr>";
}
echo "</tbody></table>";




echo "<table width=\"600\" border=\"1\"><tbody>";
while($row = mysqli_fetch_array($result2)) {
  echo "<tr>";
  echo "<td >" . $row['published'] . "</td>";
  echo "</tr>";
}
echo "</tbody></table>";



mysqli_close($con);
?>



</body>
</html>

问题是如何在此布局中显示数据库中的数据:

--------------------------------
-id----------vidTitle-----------
--------------------------------
-imgCover------vidSD------------
--------------------------------
----------published-------------

因此,每次我添加更多数据时,我之前显示的另一个块将在现有的块下添加。 .................................................. ......................................

1 个答案:

答案 0 :(得分:1)

无需编写3个查询。你只需要一个选择就能做到这一点,然后把所有的回声放在while里面。这样你就会写作,它会首先运行所有的ID和标题,然后它会在表格之后放一个表格,并带有封面和vidSD

尝试制作一个查询:

SELECT id, vidTitle, imgCover, vidSD, published FROM newsvid

通过这种方式,您将在从数据库返回的每一行上获得有关同一行的所有信息。

现在,运行一段时间与您正在做的一样,只需调整一些HTML:

echo "<table width='600' border='1'><tbody>";
while($row = mysqli_fetch_array($result)) {
  echo "<tr>";
  echo '<td width=\"10%\"><a href="details.php?id='.$row['id'].'">'.$row['id'].'</a></td>';
  echo "<td width=\"90%\">" . $row['vidTitle'] . "</td>";
  echo "</tr>";
  echo "<tr>";
  echo "<td width=\"40%\">" . $row['imgCover'] . "</td>";
  echo "<td width=\"60%\">" . $row['vidSD'] . "</td>";
  echo "</tr>";
  echo "<tr>";
  echo "<td colspan='2'>" . $row['published'] . "</td>";
  echo "</tr>";
}
echo "</tbody></table>";

您可能也想订购它。添加ORDER BY id DESC就可以了。