Originariamente inviato da web ces
isset lo calcola anche se lo selezioni e poi lo deselezioni?
Se non e' selezionato la variabile proprio non esiste. Isset ti evita l'errore. Se la variabile esiste potrebbe anche non essere valorizzata. In questo caso dovresti fare:

if (isset($a) AND $a != "") $body .= "A : " .$a . "\n";

Se esiste ed e' diversa da vuoto allora esegue...