当value =其他值之一时,选中select box

时间:2011-06-18 11:38:37

标签: php checkbox checked

我有这样的价值:

$brands = "1,2,3,4,5"

我有这个:

<input type="checkbox" name="brand[]" value="<?php print"$brand_id"; ?>" /><?php print"$brand_id"; ?>

我想写源代码,因此当$brand_id$brands之一时,选中复选框意味着打印“已检查”;

$ brands是可变的并且由php编写

3 个答案:

答案 0 :(得分:1)

<input type="checkbox" name="brand[]" value="<?php echo $brand_id.'" '; echo (in_array($brand_id, $brands))?"checked/>":"/>"; ?>

答案 1 :(得分:1)

$brands =array("1,2,3,4,5");
<?php foreach($brand as $value){ ?>
<input type="checkbox" name="brand[]" value="<?php echo "$brand_id"; ?>"<?php ($brand_id==$value)?"checked":'';} />
<?php } ?>

答案 2 :(得分:1)

这将为您拥有的每个品牌输出<input>,并将checked="checked"追加到任何所选品牌。

$selected = array(2, 5);
$brands = array(1, 2, 3, 4, 5);

foreach ($brands as $brand) {
    echo '<input type="checkbox" name="brand[]" value="'.$brand.'"'.(in_array($brand, $selected) ? ' checked="checked"' : '').'/>'."\n";
}

如果$ brands和$ selected是动态的(例如来自MySQL数据库),你可以这样做:

$brands = mysql_fetch_row('SELECT id FROM brand');
$selected = mysql_fetch_row("SELECT brand_id FROM user_brands WHERE user_id = '42'");

但是在不了解您的申请的情况下,我无法给出完整的答案。