Beh, in realtà l'elemento "nome" dell'array $anagrafica non è vuoto, è inesistente.
La soluzione che ti hanno proposto setta a "" il campo nel DB.
Se invece (come probabile) vuoi che il campo venga lasciato inalterato, devi costruire la query aggiungendo i diversi pezzi a secondo che gli elementi dell'array siano settati o meno, ad esempio
Codice PHP:if (isset({$Anagrafica['nome']})) q.=' nome="'.$Anagrafica['nome'].'"';

Rispondi quotando