Код приводить не буду (иначе флейма не оберешься, да и стыдно
), но алгоритм пожалуй прост:
1) Заводишь ассоциативный массив, содержащий таблицу значений твоей матрицы, кладешь туда все, что надо и куда надо.
2)По пришедшим из формы данным оптионов и инпута выбираешь из массива нужные данные и... вуаля