in reply to testing for the zero length string (blank value) in cgi fields

This line:
if (param('$neg') eq "")
is checking the param named "'$neg'"; that is, there is no expansion of the variable going on with single quotes, so you're not checking what you think you are checking.

Ditch the quotes:

if (param($neg) eq "")
and it should work.

-----------------------------------------------------
Dr. Michael K. Neylon - mneylon-pm@masemware.com || "You've left the lens cap of your mind on again, Pinky" - The Brain
"I can see my house from here!"
It's not what you know, but knowing how to find it if you don't know that's important