如果我的数据库中有很多数据,如何只回显我的数据一次

how to echo my data only once if there's many data in my database

这是我的代码

$sql = "select * from tbproduk where namaproduk LIKE '$produk%'";
$query = mysqli_query($con, $sql) or die("error $sql");
$num = mysqli_num_rows($query);
$result = mysqli_fetch_array($query);
for ($x = 1; $x <= $num; $x++) {
    $namaproduk = $result['namaproduk'];
    echo "<button style='color: black;text-align: left'><a style='padding: 0;line-height: 0;color: black;background: none' href='Konfirmasi/index4.php?produk=$namaproduk'>".$namaproduk ."</a></button><br>";
}

如您所见,它将回显我数据库中的所有数据,但我在数据库中具有相同的数据名称。这是我的数据库数据。

所以回显时会是这样

如果有相同的数据,如何循环一次我的代码。

您可以使用这个查询

$sql = "select * from tbproduk where namaproduk LIKE '$produk%' group by namaproduk";

您需要select 区分数据库中的记录。更改您的查询如下:

$sql = "select DISTINCT namaproduk from tbproduk where namaproduk LIKE '$produk%'";

您也可以这样做:

$sql = "select distinct tp.namaproduk, tp.id, tp.harga, tp.pembeli, tp.namagmbr from tbproduk as tp where namaproduk LIKE '$produk%' ORDER BY id";

MySql 关键字 DISTINCT 就可以了。