我想在文本字段中显示第0行和第1行的值。这是我的代码。但它显示“未定义的偏移:在C:\ wamp \ www \ member \ sys-admin \ groups.php中的1” 15,未定义的偏移量:第16行的C:\ wamp \ www \ member \ sys-admin \ groups.php中的2,未定义的偏移量:C:\ wamp \ www \ member \ sys-admin \ groups.php中的3行17" 。
<?php
$r_sql = "SELECT ugroup FROM ugroups ";
$r_result = db::getInstance()->query($r_sql);
$row = $r_result->fetch(PDO::FETCH_NUM);
$g1 = $row['0'];
$g2 = $row[1];
$g3 = $row[2];
$g4 = $row[3];
?>
HTML
<input name="g1" type="text" id="g1" style="width:300px;" value="<?php echo $g1; ?>" />
<input name="g2" type="text" id="g2" style="width:300px;" value="<?php echo $g2; ?>" />
答案 0 :(得分:1)
您似乎只是通过调用$row = $r_result->fetch(PDO::FETCH_NUM)
访问查询中的一行。此外,PDO::FETCH NUM
将按列号返回数组索引,这就是$row[1]
无效的原因(您的查询中只有一列)。
您希望使用$row = $r_result->fetchAll()
之类的内容来检索查询中的所有行,然后您应该能够使用$row[0]['ugroup'], $row[1]['ugroup']
或更好的方式从循环:while ($row = $r_result->fetch())
等。