指定したメールアドレスへ送る方法として、データファイルを作らずそのまま データを送信する方法があります。それを紹介します。 HTMLに記述されてるフォームの内容が以下と仮定します。
コメント まず、同じように入力内容を収得します。 CGIの基本的な記述の後に以下の内容を記述します。 フォームの内容を変数に格納します。 $MAIL = $FORM{'e-mail'}; $COM = $FORM{'comment'}; 次に送信先メールアドレスを指定します。 (実際には送信先メールアドレスを指定します) $TOMAIL = 'user@foo.ne.jp'; sendmailのパスを変数に格納します。 $SEND = '/usr/sbin/sendmail'; subjectを指定します。 $Title = 'お知らせ'; 自分のメールを指定します。 $MYMAIL = 'mymail@foo.ne.jp'; 次に、この変数をjisコードに変換します。 変換方法は、以下のようにします。 $SENDDATA = "$MAIL\t$COM\t$TOMAIL\t$Title\t$MYMAIL"; &jcode'convert(*SENDDATA,'jis'); ($DMAIL,$DCOM,$DTOMAIL,$DTitle,$DMYMAIL) = split(/\t/,$SENDDATA); これで、jisコードに変換されたものが、 $DMAIL $DCOM $DTOMAIL $DTitle $DMYMAIL に格納されます。 次にこれをuser@foo.ne.jp送信する記述です。 if (open(OUT,"| $SEND $TOMAIL")) { print OUT qq|Subject: $DTitle\n|; print OUT qq|From: $DMYMAIL\n|; print OUT qq|To: $DTOMAIL\n|; print OUT qq|\n\n|; print OUT qq|Email: $DMAIL\n|; print OUT qq|Com: $DCOM\n|; close(OUT); } 最後に、終了です。 print qq|送信完了しました。\n|; exit;