CGI-BBS > SO−HO > ショッピングバスケット > Win2000+BlatJでSendmailの代わりになれませんか?


カレッヂ
カレッヂ


質問者 かおる。  投稿日 10/4(木) 19:09:02
Win2000サーバー+Apach1.3.19+PHPで構成しています。
BlatJをインストールし、コマンドラインからの送信が
可能であることは確認しました。
以上の構成で、ショッピングバスケットにBlatJで注文メールを
送信させることは可能でしょうか。
現在、Sendmailのパスの代わりにBlatJ.exeへのパスを記述すると
送信完了画面はでてきます。
しかし、パス以外のその他の設定ができていないため、どれだけ待っても
注文メールが届きません。(当然なのですが・・・)
設定方法をもしご存知の方いらっしゃれば、教えていただけないでしょうか。
宜しくお願いします
回答者 呑兵衛  [削除]  投稿日 10/5(金) 19:40:55
呑兵衛@大阪です。
ここでの質問ではない気もしますが、KENTさんのところの
http://www.kent-web.com/www/mail/index.html
を尋ねてみましょう。
質問者 かおる。  [削除]  投稿日 10/5(金) 20:15:55
お返事本当にありがとうございます。

KENTさんのページも確認させていただき、
また、メールフォームサンプルも設定したことはありました。
しかし、そこでも送信完了画面がでてきますが、
一向にメールが届かなかったのです。
同様の症状が掲示板にありましたが、
BlatJのサポートはしていないとのことで、
解決方法は掲載されておりませんでした。

cargo.cgiファイルのメール送信の設定をBlatJ用に変更しないと
いけないことまでは分かったのですが・・・
現在KENTさんの所のcgiファイルと見比べて、変更しようとしているのですが、
何分初心者なので、何から手をつけていいのか???ばかりです。
もし変更方法をご存じの方いらっしゃれば、
ほんの少しでもいいので分けていただけないでしょうか。

宜しくお願いします。
回答者 呑兵衛  [削除]  投稿日 10/6(土) 14:47:32
[ 例 ]
$mailsender = 'c:\cgi\mail\blatj.exe';
open(MAIL, "| $mailsender $mailbody -t $mailto -s $subject -q") || &error("送信に失敗しました");
close(MAIL);

$mailbody は先に一時ファイルに格納し、それを読み込むようにすると、C と perl の処理の違いによる
SMTPセッションのタイムアウトを防げるようです。
jis 変換などしないように。
質問者 かおる。  [削除]  投稿日 10/6(土) 17:16:21
呑兵衛さん。お返事ありがとうございます。
cargo.cgiの変更場所と変更方法はなんとなく、
理解し始めました。

・・・基本的なところなのかもしれませんがお聞きしてよろしいでしょうか?
cargo.cgiの中で、$mailbodyにあたるところって、
どのあたりなのでしょうか。
CGIファイルの内容分かっていないことバレバレの質問ですが、
宜しくお願いします。
回答者 呑兵衛  [削除]  投稿日 10/7(日) 00:33:31
$mailto $subject 以外で必要な入力情報のすべてが $mailbodyに与えられる値です。
先の事例で送信はできるはずなので、とりあえず送信してみて、失敗を重ねて、何度も繰り返しやり直す。そういう覚悟で挑戦。
応用は基本をマスターしてから、とどなたかも言っておられます。
質問者 かおる。  [削除]  投稿日 10/8(月) 22:47:20
呑兵衛さん。お返事ありがとうございます!

現在緊急に動作させなければならくなってしまったので、
「注文する」の先をmailtoに変更しました。
こうしてとりあえずの避難はしたのですが、
結局、まだcargo.cgiからの$mailbodyを直接指定しての送信は
まだです。
もう少し頑張ってみて、再度結果報告しますので、
宜しくお願いいたします。

返信(回答)する


Web裏技