Mam pytanie

Zaznaczam chceckboxy w tabeli których id później chcę przesłać do tablicy POST.
<input name="id[]" value="$id" type="checkbox" style="width: 20px; height: 20px;">
a następnie chcę zmienić kolorych tych wierszy, które były zaznaczone

I pokazuje prawidłowo tyle ID ile zaznaczyłem, ale jak chcę zmienić poprzez poniższy kod kolory wszystkich wierszy, które były zaznaczone to zmienia mi tylko ostatni zaznaczony np. na 5...
require_once "connect.php";
if (!$polaczenie = mysql_connect($host,$db_login,$db_pass,$db_name)) { echo 'Nie można nawiązać połączenia z bazą danych';
}else
{
echo 'Nie można wybrać bazy danych'; }
switch($_POST['color_ex2'])
{
// Wpuszczony
case "c1":
{
$id=$_POST['id'];
if($result = mysql_query("UPDATE appt SET color='white' WHERE id='$id'", $polaczenie)) {
$_SESSION['ex_color']="Kolor został zmieniony na biały dla $id!";
require_once "header.php";
}else
{
echo "Błąd bazy danych, nie można wykonać zapytania do bazy\n";
}
} break;
// Bez rampy
case "c2":
{
$id=$_POST['id'];
if($result = mysql_query("UPDATE appt SET color='green' WHERE id='$id'", $polaczenie)) {
$_SESSION['ex_color']="Kolor został zmieniony na zielony dla $id!";
require_once "header.php";
}else
{
echo "Błąd bazy danych, nie można wykonać zapytania do bazy\n";
}
} break;
// Nie wjechał
case "c3":
{
$id=$_POST['id'];
if($result = mysql_query("UPDATE appt SET color='black' WHERE id='$id'", $polaczenie)) {
$_SESSION['ex_color']="Kolor został zmieniony na czarny dla $id!";
require_once "header.php";
}else
{
echo "Błąd bazy danych, nie można wykonać zapytania do bazy\n";
}
} break;
}
}
Czy może mi ktoś z tym pomóc... bo walczę już z tym od poniedziałku ;(