如何从现有数据填充这些字段?

时间:2010-04-09 19:49:11

标签: php html forms repopulation

我不确定如何从我从数据库传递的数组中填充表单的一些部分。

首先是这个< select>宾语。数据库中的关键estimate_lead_id保存了值,我希望下拉列表根据数据库中的值自动选择。

<select name="estimate_lead_id">
    <? foreach($leads->result() as $lead) { ?>
        <option value="<?=$lead->id?>"><?=$lead->lead_name?></option>
    <? } ?>
</select>

编辑:我将把第二部分打破另一个问题。

2 个答案:

答案 0 :(得分:1)

所选的选项将具有属性selected="selected",因此请在循环期间进行检查并有条件地添加此属性:

<select name="estimate_lead_id">
    <? foreach($leads->result() as $lead) { ?>
        <option value="<?=$lead->id?>" <?php echo $estimate_lead_id == $lead->id ? 'selected="selected"' : ''; ?>><?=$lead->lead_name?></option>
    <? } ?>
</select>

我可以在第二部分使用一些澄清。什么定义项目是否在估算中?

答案 1 :(得分:0)

对于第一个问题,您需要在选项标记中使用selected属性。

<select name="estimate_lead_id">
    <? foreach($leads->result() as $lead) {
        echo '<option value="'.$lead->id.'"';
        if ($lead->selected)
            echo ' selected="selected"';
        echo '>'.$lead->lead_name.'</option>\n';
    } ?>
</select>

对于第二个,它确实需要更多的澄清,但我怀疑答案将涉及和使用in_array来检查当前字段是否在估计中的字段数组中的if子句。然后,只有在子句为真时才打印html数据。