PHP︰ 显示表中的 mysql 数据库中的数据

标签: html5 MySQL PHP
发布时间: 2016/10/15 5:02:26
注意事项: 本文中文内容可能为机器翻译,如要查看英文原文请点击上面连接.

我新的 php 和从数据库中提取数据,试图在 html 表中显示它。我的问题是总返回的记录数目是 13,但表中它只显示 12 个记录 (它跳过第一个 html 表中的记录) 我的代码 snippt 是作为下面

$num_rows = mysql_num_rows($result);
echo $num_rows;
if ($num_rows > 0) {
    $i = 0;
    $dyn_table = '<table class="gridData">';
    $dyn_table.= '<th>Mil Purchy</th><th>Next Mil Purchy</th><th>total Missing</th><th>Missing From-To</th>';

    for ($x = 0; $x <= $num_rows; $x++) {
        while ($row = mysql_fetch_array($result)) {
            if ($i % 1 == 0) {
                 // if $i is divisible by our target number (in this case "3")
                echo "<script> alert('$i') </script>";
                $dyn_table.= '<tr><td>' . $row[0] . '</td>';
                $dyn_table.= '<td>' . $row[1] . '</td>';
                $dyn_table.= '<td>' . $row[2] . '</td>';
                $dyn_table.= '<td>' . $row[3] . '</td>';
            } else {
                echo "<script> alert ('in else statement') </script>";
            }
            $i++;
        }
        $dyn_table.= '</tr></table>';
    }
    echo $dyn_table;
}

和提交的按钮我已经写了几行代码之后

<fieldset>
    <?php
    if ($_GET) {
        if (ISSET($_GET['submit'])) {

            // echo "<script> alert('waiting for function') </script>";
            $From_Date = $_GET['DateFrom'];
            $To_Date = $_GET['DateTo'];
            Sequece($From_Date, $To_Date);
        }
    }
    ?>
</fieldset>

解决方法 1:

不过在此之前它是重要的是你使用 mysqli() 函数而不是 mysql() 因为 mysql() 函数系列正在离开了 php 。你也错过了一些 <tr></tr> s.因此,这里是你固定的代码︰

<?php $num_rows = mysqli_num_rows($result);
echo $num_rows;
if($num_rows > 0){
$i = 0;
$dyn_table = '<table class="gridData">';
$dyn_table .= '<tr><th>Mil Purchy</th><th>Next Mil Purchy</th><th>total Missing</th><th>Missing From-To</th>';
        while($row = mysqli_fetch_array($result))
            {
                if ($i % 1 == 0) { // if $i is divisible by our target number (in this case "3")                           
                                     echo "<script> alert('$i') </script>";
                                     $dyn_table .= '</tr><tr><td>' .$row[0] . '</td>';
                                     $dyn_table .= '<td>' .$row[1]. '</td>';
                                     $dyn_table .= '<td>' .$row[2]. '</td>';
                                     $dyn_table .= '<td>' .$row[3]. '</td>';
                                 } else {
                                     echo "<script> alert ('in else statement') </script>";
                                 }
                                 $i++;
            }
$dyn_table .= '</tr></table>';
echo $dyn_table;
}?>

此外创建许多 <script><table> 结构的代码,并没有错,非常,但它是坏 HTML 所以我建议您将存储所有 <script> s 在 array 并创建后的表,打印出数组。 任何顺便说一句,为什么发送许多警报? 为什么不只打印警报只?

赞助商