in reply to Uninitialized Value Question

So, you're trying to make sure that null values coming back from the database get turned into unobtrusive empty strings in your script, so that you stop seeing these pesky warnings. Others have provided different alternatives to what you posted, but my favorite differs from those -- to wit:
$value_a = ( !defined( $value_a )) ? '' : ( $value_a =~ /personal/ ) ? 'checked' : $value_a;
This assumes that there might be some non-null values that don't match /personal/, and those should be left as-is. If it's actually just null/non-null issue, you could simplify that further:
$value_a = ( !defined( $value_a )) ? '' : 'checked';