package MAIL; # write:nagai # ver 1.0 # 2005/11/28 use strict; use Jcode; sub new { my $class = shift; my $self = { }; return bless $self, $class; } sub sendMail($$$$$$) { my $self = shift; my($sendmail, $mailto, $mailfrom, $subject, $body) = @_; my $datenow = &getTime($self); if (!(open(OUT,"| $sendmail -t"))) { return 0; } print OUT "X-Mailer: WebMail\n"; print OUT "Errors-To: $mailto\n"; print OUT "To: $mailto\n"; print OUT "From: $mailfrom\n"; $subject = Jcode->new($subject)->h2z->jis; # print OUT "Subject: $subject\n"; print OUT "Content-Transfer-Encoding: 7bit\n"; print OUT "Content-Type: text/plain\; charset=\"ISO-2022-JP\"\n\n\n"; $body = Jcode->new($body)->h2z->jis; print OUT "$body\n"; my $host = $ENV{'REMOTE_HOST'}; my $addr = $ENV{'REMOTE_ADDR'}; if ($host eq $addr) { $host = gethostbyaddr(pack('C4',split(/\./,$host)),2) || $addr; } print OUT "\n"; # print OUT "----------------------------------------\n"; # print OUT "Processed : $datenow\n"; # print OUT "Server-Name : $ENV{'SERVER_NAME'}\n"; # print OUT "Server-Protocol : $ENV{'SERVER_PROTOCOL'}\n"; # print OUT "Server-Port : $ENV{'SERVER_PORT'}\n"; # print OUT "Gateway-Interface : $ENV{'GATEWAY_INTERFACE'}\n"; # print OUT "Request-Method : $ENV{'REQUEST_METHOD'}\n"; # print OUT "Script-Name : $ENV{'SCRIPT_NAME'}\n"; # print OUT "HTTP-Referer : $ENV{'HTTP_REFERER'}\n"; # print OUT "HTTP-User-Agent : $ENV{'HTTP_USER_AGENT'}\n"; # print OUT "Remote-host : $host\n"; # print OUT "Remote-Addr : $ENV{'REMOTE_ADDR'}\n"; # print OUT "----------------------------------------\n"; print OUT "\n"; close(OUT); return 1; } sub getTime($) { my $self = shift; my($time,$min,$hour,$mday,$mon,$year,$wday,$date,@week); $ENV{'TZ'} = "JST-9"; $time = time; ($min,$hour,$mday,$mon,$year,$wday) = (localtime($time))[1..6]; @week = ('Sun','Mon','Tue','Wed','Thu','Fri','Sat'); $date = sprintf("%04d/%02d/%02d(%s) %02d:%02d", $year+1900,$mon+1,$mday,$week[$wday],$hour,$min); return $date; } return 1; __END__