Php 如果数据库条目为null,则不显示div

Php 如果数据库条目为null,则不显示div,php,mysqli,Php,Mysqli,我有一个以选项1、选项2、选项3、选项4、选项5为列的数据库。选项1-3已输入数据,但选项4-5为空 若数据库中的选项为NULL,如何设置它以使div不显示 PHP代码: $sql = "SELECT option1, option2, option3, option4, option5 FROM options"; $result = mysqli_query($conn, $sql); $null = NULL;

我有一个以选项1、选项2、选项3、选项4、选项5为列的数据库。选项1-3已输入数据,但选项4-5为空

若数据库中的选项为NULL,如何设置它以使div不显示

PHP代码:

 $sql = "SELECT option1, option2, option3, option4, option5 FROM options";
        $result = mysqli_query($conn, $sql);
        $null = NULL;
        
        if (mysqli_num_rows($result) > 0) {
            while($row = mysqli_fetch_assoc($result)) {
                if ($result != $null) {
                    echo '<div class="row">' . '<div1></div1>' . '<div2>' . $row["option1"]. '</div2>' . '</div>';
                }
                else {
                    echo '<div class="null"></div>';
                }
                if ($result != $null) {
                    echo '<div class="row">' . '<div1></div1>' . '<div2>' . $row["option2"]. '</div2>' . '</div>';
                }
                else {
                    echo '<div class="null"></div>';
                }
                if ($result != $null) {
                    echo '<div class="row">' . '<div1></div1>' . '<div2>' . $row["option3"]. '</div2>' . '</div>';
                }
                else {
                    echo '<div class="null"></div>';
                }
                if ($result != $null) {
                    echo '<div class="row">' . '<div1></div1>' . '<div2>' . $row["option4"]. '</div2>' . '</div>';
                }
                else {
                   echo '<div class="null"></div>';
                }
                if ($result != $null) {
                    echo '<div class="row">' . '<div1></div1>' . '<div2>' . $row["option5"]. '</div2>' . '</div>';
                }
                else {
                    echo '<div class="null"></div>';
                }
                ...

目前,即使对于选项4-5,div class=“null”也不起作用,并且显示div class=“row”(高度=70px),但为空。

您将实际查询与null进行比较,而不是单个列

$result = mysqli_query($conn, $sql);
上面的行返回一个mysqli结果对象,而不是行或列-在循环中使用
$row
变量,该变量保存每一行,如下所示

if ($row['option1'] != null) {
    echo '<div class="row">' . '<div1></div1>' . '<div2>' . $row["option1"]. '</div2>' . '</div>';
} else {
    echo '<div class="null"></div>';
}
if ($row['option2'] != null) {
    echo '<div class="row">' . '<div1></div1>' . '<div2>' . $row["option2"]. '</div2>' . '</div>';
} else {
    echo '<div class="null"></div>';
}

我想这就是你想要的,尽管我会放弃
-ish标记,而只选择


if ($row['option1'] != null) {
    echo '<div class="row">' . '<div1></div1>' . '<div2>' . $row["option1"]. '</div2>' . '</div>';
} else {
    echo '<div class="null"></div>';
}
if ($row['option2'] != null) {
    echo '<div class="row">' . '<div1></div1>' . '<div2>' . $row["option2"]. '</div2>' . '</div>';
} else {
    echo '<div class="null"></div>';
}
if ($row['option1'] != null) {
    echo '<div class="row">' . '<div1></div1>' . '<div2>' . $row["option1"]. '</div2>' . '</div>';
}
if ($row['option2'] != null) {
    echo '<div class="row">' . '<div1></div1>' . '<div2>' . $row["option2"]. '</div2>' . '</div>';
}
 <?php
$sql = 'SELECT option1, option2, option3, option4, option5 FROM options';
$result = mysqli_query($conn, $sql);


while($row = mysqli_fetch_array($result)) {
    foreach($row as $option) {
        if (!empty($option)) {
            printf('
                <div class="row">
                    <div1></div1>
                    <div2>%s</div2>
                </div>
            ', $option);
        }
    }
}