Конечная форма динамическая. Часть полей добавляется в зависимости от выбранных условий в первых полях.
В приведенном выше примере работает конструкция типа:
<select name="items" onchange="document.getElementById('add_item').submit()" >
Но непонятно как передавать выбранные данные в PHP для обработки сервером.
Если делать все на PHP, как и сейчас реализовано, то приходится передавать данные от файла к файлу, пока не получишь желаемого результата.
А в JS можно это сделать на одной странице.