Как реализовать форму с блоками?
canvas + js, есть куча библиотек, в которых максимально упрощен drag n drop
https://konvajs.github.io/docs/drag_and_drop/Drag_...
Можно и hardcore на html5 устроить:
https://www.w3schools.com/html/html5_draganddrop.asp но там будут нюансы:
https://caniuse.com/#search=drag
Как вариант:
Отправлять id блоков, вошедших в мишень и их координаты в мишени.