计数填充SQL数组字段PHP


Count filled SQL array fields PHP

我正在从mysql查询中获取一个数组。

$viewerSQL = mysql_query("SELECT * FROM `this` WHERE id = ". 
mysql_real_escape_string($_GET[id]) ."");
$pageData = mysql_fetch_array($pageSql);

我得到一个有40个条目的数组,我想根据名称检查其中的7个条目是否被填满。

到目前为止,我做了什么,我在想什么:

$oioi = 0;
                            while($oioi<7){
                            $oioi++;
                            $pic = "pic".$oioi;
                            $active="";
                            $path = "./upload/objectoffers/$viewerData[id]/$pic";
                            $picDesc = "pic".$oi."Desc";
                            $picArray = '$viewerData['.$pic.']';
                            echo $pic."<br>";
                            echo $picArray."<p>";
                            if(!empty($path)){
                            if($oioi==1){$active = "active";}?>
                            <div class="item <?=$active;?>">
                                <img style="width: 100%;" src="./images/<?=$viewerData[$pic];?>" alt="<?=$viewerData[$picDesc]?>">
                            </div>
                            <?
                            }}
                          ?>

但这不起作用,因为:$path永远不会为空…我想避免为每一个$viewerData[pic1]$viewerData[pic7]数组手动编写"if(!empty)"…

这就是为什么我在这里…

也许你可以帮我改进这个或提供一些提示。

谢谢!

编辑:这是我得到的"输出":

pic1
$viewerData[pic1]
pic2
$viewerData[pic2]
pic3
$viewerData[pic3]
pic4
$viewerData[pic4]
pic5
$viewerData[pic5]
pic6
$viewerData[pic6]
pic7
$viewerData[pic7]

我认为你应该用file_exists代替!

$oioi = 0;
while ($oioi < 7) {
    $oioi++;
    $pic = "pic" . $oioi;
    $active = "";
    $path = "./upload/objectoffers/$viewerData[id]/$pic";
    $picDesc = "pic" . $oi . "Desc";
    $picArray = '$viewerData[' . $pic . ']';
    echo $pic . "<br>";
    echo $picArray . "<p>";
    if (file_exists($path)) {
        if ($oioi == 1) {
            $active = "active";
        }
        ?>
        <div class="item <?= $active; ?>">
            <img style="width: 100%;" src="./images/<?= $viewerData[$pic]; ?>" alt="<?= $viewerData[$picDesc] ?>">
        </div>
    <?php
    }
}