in reply to SQL causing 500 error (was: What's Wrong With This?)

I can't help you with your problem directly (what's the error message? What's in $FORM{'email'} ?). But one of the most common advices about DBI stuff is to use placeholders. I'd write that piece code in this way:
my $sth = $dbh->prepare( qq| select count( * ) from userlist where colemail = ? |) || die $dbh->errstr; $sth->execute( $FORM{'email'} );
Michael G. Schwern has several good points here: http://magnonel.guild.net/~schwern/talks/Refactoring_DBI_Example/