in reply to Global symbol requires explicit package name

Ouch. This would all be my fault, as that is code i posted. I left out the part where you call CGI::ReadParse() which allows you to retrieve submitted query variables via this magical global variable named %in - the only catch is that you have to declare it before you can use with strict turned on, and you can't use my (but you can use our).

So, the quick fix with the code posted is to remove use strict; (and you might as well take out the -w while yer at it ...) but strict is good, so instead change the top to this:

#!/usr/bin/perl -T use strict; use warnings; use CGI; use CGI::Carp qw(fatalsToBrowser); use Mail::Mailer; our %in; CGI::ReadParse(); # rest of script as posted
However ... i personally don't use (or recommend using) CGI::ReadParse() - please use CGI::param() as graff instructed. And if you haven't gone through Ovid's free online Web Programming with Perl yet, then do so now. Good stuff.

jeffa

L-LL-L--L-LL-L--L-LL-L--
-R--R-RR-R--R-RR-R--R-RR
B--B--B--B--B--B--B--B--
H---H---H---H---H---H---
(the triplet paradiddle with high-hat)