0

簡単な質問だと思います。

私は次のpdoステートメントを持っています:

$sth = $db->prepare("SELECT person,job FROM orgstructure where department=:dept order by id asc"); 
$sth->bindParam(':dept', $departmentname, PDO::PARAM_STR); 
$sth->execute(); 
$dataArray = $sth->fetchAll();
echo $dataArray[0]['person'];
echo $dataArray[1]['job'];

2つのエコーはテスト用であり、100%機能します。

後で私のフォームで、for loop以下のように、pdoの出力に基づいて選択ボックスオプションを提供します。

<table>
<?
    for ( $i = 1; $i <=50; $i++ ) { 

        ?>      
            <tr>
                <td> Job <? echo  $i; ?></td>
                <td>
                    <SELECT NAME=job<? echo $i; ?> id=job<? echo $i; ?> style="width:150px;border: 1px solid #2608c3;color:red"> 
                    <? echo  "<option selected>".$dataArray[$i]['job']."</option>"; ?>
                    <option>
                    <?=$optionjobs?> 
                    </option>
                    </SELECT>
                </td>
                <td> Person </td>
                <td>
                <? echo $i."person: ".$dataArray[$i]['person']."job: ".$dataArray[$i]['job']; ?>

                    <SELECT NAME=person<? echo $i; ?> id=person<? echo $i; ?> style="width:150px;border: 1px solid #2608c3;color:red">
                    <? echo  "<option selected>".$dataArray[$i]['person']."</option>"; ?>               
                    <option>
                    <?=$optionpersons?> 
                    </option>
                    </SELECT>
                </td>
            </tr>
        <?
            }
        ?>
</table>

ただし、これは機能しません。selectステートメントは正しく、$dataarrayをテキストで置き換えても機能します。

$dataArray内で使用されている$iカウンターに問題があると思いますか?助言がありますか?

いつもありがとう、

4

1 に答える 1

1

このコードを試して、私のマシンで動作しました

<?php
    for ( $i = 1; $i <=50; $i++ ) { 

        ?>      
            <tr>
                <td> Job <?php echo  $i; ?></td>
                <td>
                    <SELECT NAME=job<?php echo $i; ?> id=job<?php echo $i; ?> style="width:150px;border: 1px solid #2608c3;color:red"> 
                    <?php echo  "<option selected>".$dataArray[$i]['job']."</option>"; ?>
                    <option>
                    <?php echo $optionjobs ?> 
                    </option>
                    </SELECT>
                </td>
                <td> Person </td>
                <td>
                <?php echo $i."person: ".$dataArray[$i]['person']."job: ".$dataArray[$i]['job']; ?>

                    <SELECT NAME=person<?php echo $i; ?> id=person<?php echo $i; ?> style="width:150px;border: 1px solid #2608c3;color:red">
                    <?php echo  "<option selected>".$dataArray[$i]['person']."</option>"; ?>               
                    <option>
                    <?php echo $optionpersons ?> 
                    </option>
                    </SELECT>
                </td>
            </tr>
        <?php
            }
        ?>
</table>
于 2012-11-20T18:43:47.863 に答える