in reply to Sending email Help!

While I can tell for sure where or what the problem is checking through your codes, I think you will do tell to heed the warning of this module's current maintainer MIME::Lite WAIT!
Secondly, this

my $first_name = $args{first_name} || ''; my $last_name = $args{last_name} || '';
in your code, will perhaps be better written as
my $first_name = $args{first_name} // ''; my $last_name = $args{last_name} // '';

Replies are listed 'Best First'.
Re^2: Sending email Help!
by Anonymous Monk on Jan 02, 2013 at 07:04 UTC

    in your code, will perhaps be better written as

    No it won't