mysql_fetch_array到数组中以检查是否应该选中复选框

时间:2011-11-22 03:03:47

标签: php mysql

我有一个名为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 '&nbsp;Green' . tep_draw_checkbox_field('color_id[]', '1', in_array('1', $qa)) . '&nbsp;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将值插入数组中。

1 个答案:

答案 0 :(得分:0)

 while ($row = mysql_fetch_array ($color_id_query)) {
            $qa[] = $row['color_id'];
       }