CAP=,

come vedi mancando il dato e senza le virgolette attorno a $cap questo risulta non vuoto ma dato assente e causa errore di sintassi.