in reply to if not defined
is parsed the same asif (not defined($pname) && $pname ne ''){
instead ofif (not (defined($pname) && $pname ne '')){
if ((not defined($pname)) && $pname ne ''){
Also, if $pname isn't defined, then it can't possibly equal '', so you probably need to change your conditions a bit (probably you mean something like
but it's possible you want something else.)if (!defined($pname) || $pname eq ''){
|
|---|