所以我有一个查询,它从一个或两个字段中分离出大部分来自mysql数据库的信息。我想将数据输出到表中,但是由于数据逐行输出以合并html表标签的方式,我一直在努力。一些朋友建议使用CSS在各列周围设置边框样式,但我不想使用设置宽度的CSS边框来制作表格。

到目前为止,在“ while”导致每行数据之间出现1px x 1px表之后,任何尝试回显表的尝试都将非常有用。

 <?php  include 'database_conn.php';      // make db connection

    $sql = "SELECT CDID, CDTitle, CDYear, catID, CDPrice FROM `nmc_cd` ORDER BY `nmc_cd`.`CDTitle` ASC";

        $rsCD = mysqli_query($conn, $sql) or die(mysqli_error($conn));

          while ($row = mysqli_fetch_assoc($rsCD)) {
            $CDID = $row['CDID'];
                $CDTitle = $row['CDTitle'];
                $CDYear = $row['CDYear'];
                $catID = $row['catID'];
              $CDPrice = $row['CDPrice'];

        echo "<br>";
        echo "<span class= \"CDID\">$CDID</span>\n";
        echo "<span class= \"CDTitle\">$CDTitle</span>\n";
        echo "<span class= \"CDYear\">$CDYear</span>\n";
        echo "<span class= \"catID\">$catID</span>\n";
        echo "<span class= \"CDPrice\">$CDPrice</span>\n";
        echo "</div>\n";

            }   mysqli_free_result($rsCD);
          mysqli_close($conn); ?>



更新说明*尝试了几种不同的方法,下面是其中一种。



$sql = "SELECT CDID, CDTitle, CDYear, catID, CDPrice FROM `nmc_cd` ORDER BY `nmc_cd`.`CDTitle` ASC";

    $rsCD = mysqli_query($conn, $sql) or die(mysqli_error($conn));

      while ($row = mysqli_fetch_assoc($rsCD)) {
        $CDID = $row['CDID'];
            $CDTitle = $row['CDTitle'];
            $CDYear = $row['CDYear'];
            $catID = $row['catID'];
          $CDPrice = $row['CDPrice'];

          echo "<table id='dattabletho'>";
        echo"<tr>";
    echo "<td><span class= \'CDID\'> " . $CDID . "</span>\n";
    echo "<td><span class= \'CDTitle\'> " . $CDTitle . "</span></td>\n";
    echo "<td><span class= \'CDYear\'> " . $CDYear . "</span></td>\n";
    echo "<td><span class= \'catID\'> " . $catID . "</span></td>\n";
    echo "<td><span class= \'CDPrice\'> " . $CDPrice . "</span></td>\n";
        echo"</tr>";

        }
        echo "</table>";
        mysqli_free_result($rsCD);
      mysqli_close($conn); ?>



通过上面的代码,我设法使每一行作为联合行输出,我试图将查询中的数据放入表中,而不输出简单的空表。之所以很难,是因为我需要检索多个记录以使其位于同一行中,并且最好在表中对齐这些列。我知道,这和HTML问题一样,都是HTML问题,我对PHP / SQL还是很陌生。

最佳答案

<?php  include 'database_conn.php';      // make db connection

    $sql = "SELECT CDID, CDTitle, CDYear, catID, CDPrice FROM `nmc_cd` ORDER BY `nmc_cd`.`CDTitle` ASC";

        $rsCD = mysqli_query($conn, $sql) or die(mysqli_error($conn));

          while ($row = mysqli_fetch_assoc($rsCD)) {
            $CDID = $row['CDID'];
                $CDTitle = $row['CDTitle'];
                $CDYear = $row['CDYear'];
                $catID = $row['catID'];
              $CDPrice = $row['CDPrice'];

        echo "<br>";
        echo "<span class= \'CDID\'> " . $CDID . "</span>\n";
        echo "<span class= \'CDTitle\'> " . $CDTitle . "</span>\n";
        echo "<span class= \'CDYear\'> " . $CDYear . "</span>\n";
        echo "<span class= \'catID\'> " . $catID . "</span>\n";
        echo "<span class= \'CDPrice\'> " . $CDPrice . "</span>\n";
        echo "</div>\n";

            }   mysqli_free_result($rsCD);
          mysqli_close($conn); ?>

10-04 22:20
查看更多