Cita: [...] pero los valores de los checkboxes se mezclan entre si y se ingresan solo en el primero.
Eso es correcto, así funcionan los checkboxes.
Si necesitas generar consistencia debes agrupar todos los name de forma coherente:
Cita: // MAL
<input type="checkbox" name="x[]">
// BIEN
<input type="checkbox" name="x[y]">
<input type="checkbox" name="x[y][z]">
Puedes usar "y", es decir, el índice para generar una relación, etc.
Si necesitas otro nivel de relación puedes usar tantas dimensiones como necesites.