我的代码有问题,在我的数据库(mysql)中,我有这样的行信息:1,4,6,7

$sql = "SELECT skins FROM table WHERE username = '$username'";
$result = mysqli_query($connection, $sql);
if(mysqli_num_rows($result) > 0) {
    while($row = mysqli_fetch_assoc($result)) {

        $arr = explode(",", $row["skins"]);

        foreach($arr as $array) {
            echo "<img src=skins/". $array .".png alt=''>" . "<br>";
        }
    }
}


在皮肤文件中,我的皮肤名称为1.png,4.png等等。此代码将数组中的数字转换为单独的颜色,但此代码仅显示第一个图像,其他代码显示迷你图标当它没有显示图像时,当我打开它并查看它的URL时,我看到的URL是这样的:MYFOLDER / skins,例如在第二张图像中,它应该是MYFOLDER / skins / 4.png,但不是。有任何解决办法吗?

最佳答案

您应该将图像路径用引号引起来

foreach($arr as $array) {
    echo "<img src='skins/". $array .".png' alt=''>" . "<br>";
}


和删除空间形式$ array

foreach($arr as $array) {
    echo "<img src='skins/".trim( $array) .".png' alt=''>" . "<br>";
}

10-05 23:23