Eто един лесен начин по който можеш да го направиш.
Правиш си една таблица съдържаща цветовете - colors:
id - ид на цвета
color - име на цвят
Да кажем, че таблицата ти с продукти ( products ) е следната:
id - ид на продукта
name - име на продукта
price - цена
colors - цветовете в които е наличен продуктът
---
В администрацията при редакция на продукт, вадиш цветовете от таблицата colors и ги добавяш във формата като checkbox-oве.
Когато записваш променения продукт, записваш id-тата от всички маркирани checkbox-ове в полето color. Примерно можеш да ги запишеш със запетайка - 2,6,7,8,11.
При избиране на даден продукт можеш с explode да си обработиш данните от полето color на продукта като масив и с foreach да си направиш select box за наличните цветове.
------------
Примерно можеш да го направиш и с 3 таблици - products, colors, product_colors, където примерно имаш таблица product_colors
id - ид
product_id - ид на продукт
color_id - ид на даден цвят
nalichnost - колко броя от този цвят са в наличност
За всеки цвят, в който даден продукт е наличен си правиш запис в product_colors. Можеш да добавиш и допълнителни полета като nalichnost - при изчерпване на наличните броеве от този цвят да се скрива.
//off
хубав артикулен номер на първият продукт ;D