我有一个名为products_to_colors的表,它有2列,product_id和color_id。
我正在尝试将所有表中的结果放入一个数组中,以便我可以检查这些值是否已经存在,以便复选框可以显示为已选中。
这是查询代码部分:
$color_id_query = tep_db_query("select color_id from " . TABLE_PRODUCTS_TO_COLORS . " where products_id = '" . (int)$product['products_id'] . "'");
while ($row = mysql_fetch_array ($color_id_query)) {
$key=$row['color_id'];
$qa[$key] = array();
}
这是复选框部分:
<tr>
<td class="main">Colors</td>
<td class="main">
<?php echo ' Green' . tep_draw_checkbox_field('color_id[]', '1', in_array('1', $qa)) . ' Turquoise' . tep_draw_checkbox_field('color_id[]', '2', in_array('2', $qa)); ?></td>
</tr>
函数tep_draw_checkbox_field定义为:
function tep_draw_checkbox_field($name, $value = '', $checked = false, $compare = '') {
return tep_draw_selection_field($name, 'checkbox', $value, $checked, $compare);
}
所以基本上我只是尝试将on_array函数用于checked字段,但我认为我没有正确使用mysql_fetch_array将值插入数组中。
答案 0 :(得分:0)
while ($row = mysql_fetch_array ($color_id_query)) {
$qa[] = $row['color_id'];
}