0

我从 PHP 开始,我的代码可以正常工作:

<body>

<?

require("conexaoBD.php");

$sql = "SELECT * FROM tb_materia_prima";

$limite = mysql_query("$sql");

while ($sql = mysql_fetch_array($limite) ) {
    $data       = $sql["data"];
    $lote       = $sql["lote"];
    $material   = $sql["material"];
    $cor        = $sql["cor"];
    $quantidade = $sql["quantidade"];
    $prazo      = $sql["prazo"];

    echo "<div id=\"testeID\">
            Data: $data<br> Lote: $lote<br> Material: $material<br> Cor: $cor<br> Quantidade: $quantidade Kilos<br> Previsão de entrega: $prazo<br><a href=\"#\">Editar</a>
          </div>";
}

?>

</body>

但是,现在我想将回显数据放入 HTML 中,如下所示:

<div>

Data: <p><?php echo $data ?></p>
<br /><br />
Lote: <p><?php echo $lote ?></p>
<br /><br />
Material: <p><?php echo $material ?></p>
<br /><br />
Cor: <p><?php echo $cor ?></p>
<br /><br />
Quantidade: <p><?php echo $quantidade ?></p>
<br /><br />
Prazo: <p><?php echo $prazo ?></p>

</div>

它也可以正常工作,但只返回最后一个 MySQL 条目。如何显示所有条目?

4

1 回答 1

0

先获取你的数据,然后开始 HTML 模板

<?php
require("conexaoBD.php");
$sql = "SELECT * FROM tb_materia_prima";
$limite = mysql_query($sql);
$data = array();
while ($sql = mysql_fetch_array($limite) ) {
    $data[] = $sql;
}
?>
<body>
<?php foreach ($data as $row): ?>
    <div id="testeID">
        Data:                <?=$row['data']?><br> 
        Lote:                <?=$row['lote']?><br> 
        Material:            <?=$row['material']?><br>
        Cor:                 <?=$row['cor']?><br> 
        Quantidade:          <?=$row['quantidade']?> Kilos<br> 
        Previsão de entrega: <?=$row['prazo']?><br>
        <a href="#">Editar</a>
    </div>
<?php endforeach ?>
</body>

但是,最好使用PDO获取数据:

<?php
require("conexaoBD.php");
$sql = "SELECT * FROM tb_materia_prima";
$stm = $pdo->prepare($sql);
$stm->execute();
$data = $stm->fetchAll();
?>

当然,模板部分将保持不变。这就是模板的重点:在更改程序逻辑时,您的模板将保持不变。反之亦然

于 2013-04-05T16:03:40.377 回答