cgiでファイルを作ってメールを出す

[上に] [前に] [次に]
すぎの 1999/07/11(日) 02:57:36
#!/usr/local/bin/perl
require './jcode.pl';
$tmp_emb = 'mail.dat';
$mailto   = 'cgi@komekawa.or.jp';
$nkf      = '/usr/local/bin/nkf';
$sendmail = '/usr/sbin/sendmail';
open(OUT, '>$tmp_emb');
print OUT "これはCGIからのメールです。\n";
print OUT "ちゃんと動いています。\n";
close(OUT);
'$sendmail $mailto < $tmp_emb';
unlink('$tmp_emb');

このcgiファイルを読み込んだら自動でメールが来るように
したいのですが、エラーもでずに完全に無視されています。
何が足りないのでしょうか?

ふじ 1999/07/11(日) 04:02:59
検証してないけど

>open(OUT, '>$tmp_emb');

これ、$tmp_emb という名前のファイルをオープンしてます。
シングルクォートだから変数展開されていないでしょう。

open などのシステムコールの戻り値はちゃんとチェックしましょう。
open (OUT , "hoge") or print "can't open hoge $!";
みたいにして。

メールを送る部分は、とほほさんの「メール送信フォーム」などの
ソースを参考にするといいかも。エラーチェックもしてますし。

[上に] [前に] [次に]