
  GatorV 
Yeeeeeeeee 
Eso era lo que realmente queria.... te pasastes ya me estaba loqueando usaba el while, luego el for, y por ultimo el foreach y no me salia nada,
Es que en el segundo while del que haci yo solo entraba una sola vez y el resto no entraba... ¿ AHora por que no entraba ???? vete a saber porque.... 
Pero al fin Salio . 
Ahora para grabar estas modificaciones te olvidaste el simbolo de arregloes decir: 
$template = "<input type=\"checkbox\" name=\"
colores[]\" value=\"%s\"%s>%s";  
PERO HAY UNA COSA ... QUE REALMENTE NO ENTIENDO ES LA RUTINA 
$colores = array();
while( $row = mysql_fetch_array( $consul1 ) ) { // obtener todos
    $colores[$row["id"]] = $row["
color"];
}
// ESTE $row["
color"] ES LA DESCRIPCION DEL COLOR ??????
$marcados = array();
while( $row = mysql_fetch_array( $consul2 ) ) { // obtener los marcados
    $marcados[] = $row["id"];
} 
Si no es mucha molestia me podrias indicar el funcionamiento de esto.... te agradeceria bastante... !!! 
foreach( $colores as $id => $color ) {
    $template = "<input type=\"checkbox\" name=\"colores[]\" value=\"%s\"%s>%s";
    $selected = "";
    if( in_array( $id, $marcados ) ) $selected = " checked=\"checked\""; 
    echo sprintf( $template, $id, $selected, $color );
}    
Gracias