-PR-
解決
済み

サーバー内のテキストデータを拾って、メール送信するスクリプト

  • 困ってます
  • 質問No.69069
  • 閲覧数75
  • ありがとう数1
  • 気になる数0
  • 回答数4
  • コメント数0

お礼率 32% (51/157)

こんにちは、変動する表の作成スクリプトでは、callhiroさん、danyさんに多大なるご協力をいただきありがとうございました。

それで、また別件ですが、サーバー内にあるテキストファイルを読み取ってメール送信する方法をしりたいのですが、今回から質問を細切れにして、ひとつ解決したら締め切ることにいたします。
通報する
  • 回答数4
  • 気になる
    質問をブックマークします。
    マイページでまとめて確認できます。

質問者が選んだベストアンサー

  • 回答No.3
レベル7

ベストアンサー率 54% (6/11)

参考URLなんかいいんじゃないかと。

sendmail使うなら

&jcode::convert(\$sub,'jis');
&jcode::convert(\$msg,'jis');

if( open( MAIL,"| $sendmail $mailto -t")) {
print MAIL "X-Mailer: $mailer\n";
print MAIL $etc if $etc;
print MAIL "To: $to\n";
print MAIL "From: $from\n";
print MAIL "Subject: $sub\n";
print MAIL "Content-Transfer-Encoding: 7bit\n";
print MAIL "Content-type: text/plain\n\n";
print MAIL "$msg\n";
close( MAIL );
}else{
return "!!ERROR!!";
}

とか。ちなみに
$text = <IN>;
だと最初の一行しか読まないので
$text = join( '',<IN> );
にするといいです。

jcodeについてはこのへんが。必見です。
http://www.mikeneko.ne.jp/~lab/kcode/jcode.html
お礼コメント
hooma

お礼率 32% (51/157)

ありがとうございました。

この質問に関しては、よくわかりました。

どうやら、CGIだけでは自動的にメールを送信できないみたいですね。
また、何かありましたらお願いいたします。
投稿日時 - 2001-05-03 19:51:45
-PR-
-PR-

その他の回答 (全3件)

  • 回答No.1
レベル12

ベストアンサー率 57% (232/402)

sendmailが使えるサーバであれば、単純にテキストファイルをメール送信するだけなら、対象となるファイルを適当な変数に読み込んで、ヘッダ付けてsendmailに流し込めば済むと思いますが。 メールヘッダの書式についてはRFC822を読まれた方がいいでしょう。(メール題名にASCII以外の文字を使うんならRFC2047も必要) 試しに書くとすればこんな感じですかねぇ。(エラートラップ等は省略してま ...続きを読む
sendmailが使えるサーバであれば、単純にテキストファイルをメール送信するだけなら、対象となるファイルを適当な変数に読み込んで、ヘッダ付けてsendmailに流し込めば済むと思いますが。
メールヘッダの書式についてはRFC822を読まれた方がいいでしょう。(メール題名にASCII以外の文字を使うんならRFC2047も必要)

試しに書くとすればこんな感じですかねぇ。(エラートラップ等は省略してます)

open( IN, "< [ファイル名]" );
$text = <IN>;
close( IN );

open( OUT, "| /usr/sbin/sendmail" );
print OUT <<EOM
From: [発信元のアドレス]
To: [宛先]
Subject: [題名]

$text
.
EOM
close( OUT );
補足コメント
hooma

お礼率 32% (51/157)

素朴な疑問ですが、お答えいただいたスクリプトはどういうきっかけで、作動しますか。
また、時間指定をして予約送信するにはどうしたらいいでしょうか。
投稿日時 - 2001-05-02 20:53:08


  • 回答No.2
レベル12

ベストアンサー率 57% (232/402)

一つ補足。 「print OUT <<EOM;」のところは文末にセミコロン付け忘れてたので、もし動かす際は付けといて下さい。
一つ補足。
「print OUT <<EOM;」のところは文末にセミコロン付け忘れてたので、もし動かす際は付けといて下さい。
  • 回答No.4
レベル10

ベストアンサー率 35% (54/152)

どうもこんにちは。 今回の質問ですが、みなさんの教えてくださってる方法で良いかと思います。 アドバイスですが、 CGIの本を参考にするのも当然良いですが やりたいことを実現しているフリーのスクリプトを分析したり、 複数の優良なCGIスクリプトをうまく組み合わせて オリジナルのものを作ると言うことも有効だと思いますので、 是非参考にしてください。 ではでは。
どうもこんにちは。

今回の質問ですが、みなさんの教えてくださってる方法で良いかと思います。
アドバイスですが、
CGIの本を参考にするのも当然良いですが
やりたいことを実現しているフリーのスクリプトを分析したり、
複数の優良なCGIスクリプトをうまく組み合わせて
オリジナルのものを作ると言うことも有効だと思いますので、
是非参考にしてください。

ではでは。
このQ&Aで解決しましたか?
関連するQ&A
-PR-
-PR-
こんな書き方もあるよ!この情報は知ってる?あなたの知識を教えて!
このQ&Aにはまだコメントがありません。
あなたの思ったこと、知っていることをここにコメントしてみましょう。

その他の関連するQ&A、テーマをキーワードで探す

キーワードでQ&A、テーマを検索する
-PR-
-PR-
-PR-

特集


関連するQ&A

-PR-

ピックアップ

-PR-
ページ先頭へ