简单的问题,我想。
我有以下 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'];
这两个回声是要测试的,它们 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>
然而,这不起作用。如果我用文本替换 $dataarray,select 语句是正确的并且有效。
我假设问题在于 $dataArray 中使用的 $i 计数器?有什么建议么?
一如既往地感谢,