如何 select 具有值的行中的数据

How to select data from a row that has a value

我正在创建一个具有探索页面的社交网络。我想在两个单独的 div 中显示 post 文本或图像。现在显示的方式不是我想要的。

它在同一个 div 中显示文本和图像,如果没有图像,它会在应该是图像的地方显示一个空白方块。这是一个探索页面,所以我希望 post 文本和图像随机显示并单独显示在 div 中,如果图像 div 中没有任何内容,它只会显示文本和反之亦然。

$explore_image = $con->prepare('SELECT body, image FROM posts ORDER BY RAND()');
$explore_image->execute();
$explore_image->store_result();
$explore_image->bind_result($body, $image);

// output data of each row
while ($explore_image->fetch()) {
    
    echo '<div id="rcorners2">';
    echo "$body <img src='" . $image . "' id='explore_post_pic'></br><br><br><br>  
            </div><br>" ;
}

更新!!! -

此代码只显示一张图片和一张div

$explore_image = $con->prepare('SELECT body, image FROM posts ORDER BY RAND()');
$explore_image->execute();
//$explore_image->store_result();
//$explore_image->bind_result($body, $image);
$explore_image_result = $explore_image->get_result();

while ($row = $explore_image_result->fetch_assoc()) {
    
    //$id = $row['id'];
    $body = $row['body'];
    //$added_by = $row['added_by'];
    //$date_time = $row['date_added'];
    $image = $row['image'];

}           

// output data of each row
if (!empty($image)) {
    # code...

    echo '<div id="rcorners2">';
    echo "<img src='" . $image . "' id='explore_post_pic'></br><br><br><br>  
        </div><br>" ;
}

移除$explore_image->store_result.
参见documentation。完成后不要忘记关闭准备好的语句和连接(按此顺序)。
根据您的初始代码:

$explore_image = $con->prepare('SELECT body, image FROM posts ORDER BY RAND()');
$explore_image->execute();
// $explore_image->store_result();
$explore_image->bind_result($body, $image);

// output data of each row
while ($explore_image->fetch())
{
    if (!empty($image))
    {
     echo '<div id="rcorners2">';
     echo "$body <img src='$image' id='explore_post_pic'></br><br><br><br></div><br>";
    }
}
$explore_image -> close();
$con -> close();
<?php

$explore_image = $con->prepare('SELECT body, image FROM posts ORDER BY RAND()');
$explore_image->execute();
$explore_image->store_result();
$explore_image->bind_result($body, $image);

// output data of each row
while ($explore_image->fetch()) {
    
    if($image!=''){
    $newImage="<img src='".$image."' id='explore_post_pic'>";
    }
    else{
    $newImage="";
    }
    
    echo '<div id="rcorners2">'.$body.'</div>';
    echo '<div id="rcorners2">'.$newImage.'</div>';
}

?>