我可以使用以下代码成功预先填充我的问题:First Name: <input type="text" name="first_name" size="30" maxlength="20" value="' . $row[2] . '" /><br />
但是,当我尝试对下拉框和textarea框执行相同操作时,即使数据库中存在实际内容,也不会从数据库中预先填充任何内容。这是我分别用于下拉和textarea的代码:
<?php
echo '
<form action ="edit_contact.php" method="post">
<div class="contactfirstcolumn">
Prefix:
<select name = "prefix" value="' . $row[0] . '" />
<option value="blank">--</option>
<option value="Dr">Dr.</option>
<option value="Mr">Mr.</option>
<option value="Mrs">Mrs.</option>
<option value="Ms">Ms.</option>
</select><br />';
?>
和
Contact Description:<textarea id = "contactdesc" name="contactdesc" rows="3" cols="50" value="' . $row[20] . '" /></textarea><br /><br />
重要的是要注意我没有收到任何错误。表单加载正常,但没有下拉和textarea字段的数据。
谢谢! 贝
答案 0 :(得分:1)
如果您想预先填充选择,您可以尝试这种方式:
$predata = array(
'blank' => '--',
'Dr' => 'Dr.',
'Mr' => 'Mr.',
'Mrs' => 'Mrs.',
'Ms' => 'Ms.',
);
echo "<select name='prefix'>";
foreach($predata as $value => $label){
echo "<option value='$value' ".($value == $row[0] ? 'selected="selected"' : '').">$label</option>";
}
echo "</select>";