Why it matters
A screen reader announces a field by its label. Without one it says "edit text" and the user has to guess what goes in it. A placeholder is not a label: it disappears as soon as someone types, and many screen readers do not read it.
How to fix it
Put a <label for="id"> next to each field, or wrap the field in its label. Where a visible label does not fit the design, use aria-label.