新規記事投稿 フォロー記事投稿 記事のキャンセル
From: とけおん <tokeon@hotmail.com>
Subject: Re: 投稿記事を管理者にもメールでつうちするには?(ありがとうございました)
Date: 2000/05/24 14:37:53
Reference: mesh.forum.4/00194

とけおんです。
いしどうさん、にあさん、TADさん ご教授ありがとうございました。

いしどうさんレス情報から、早速 WinNT、PWS上での
メールツールを探し。TADさん 提供のHP(河馬屋さん)
にたどり着き、インストールしました。
(インストールはこちらから
 簡単に出来ました。)
試しに、河馬屋さんのサンプルとおりのスクリプトをarticle.cgi中post_articleの
	open(NEW, ">$FORUMPATH/new_arrival") && close(NEW);
の直前に組み込みました。

use Win32::OLE;
$oBasp = Win32::OLE->new('basp21');	#Basp21オブジェクトの作成
#メールの送信
$oBasp->SendMail("SMTPサーバ名", 	         #SMTPサーバ
                'tokeon@hotmail.com',        #宛先
		'サーバです',               #送信元
		"Basp21でメール", 		#件名
		"簡単なメール\nMailTest\n2行目も簡単\n",
					#本文
""			#添付ファイルに""を指定
	);

が、perlライブラリ配置の違いからか、use Win32::OLE; でlocateエラー
となり、そこを変更しました。

use OLE;
$oBasp = OLE->new('basp21');	#Basp21オブジェクトの作成
#メールの送信
$oBasp->SendMail("SMTPサーバ名", 		#SMTPサーバ
		'tokeon@hotmail.com', 	#宛先

		'サーバです', 	#送信元
		"Basp21でメール", 		#件名
		"簡単なメール\nMailTest\n2行目も簡単\n",
					#本文
		""			#添付ファイルに""を指定
	);

としましたが、今度はOLEAUT32.dllがlocateエラーとなり、
PWSの特性と思い、PWS設定ルートのscriptフォルダーにOLEAUT32.dllをコピーしてやりOKでした。
で、以下のスクリプト変更し一段落です。(^。^;)フウ
@site.pl:

#投稿メール送信用
$smtpsvr ='smtpsvr';#SMTPサーバ名
$forumurl = 'http://tokeon.xx.xx.xx';#先頭url

の追加。

Aforum.pl:

#投稿記事メール送信用
$main'SMTPSVR = $smtpsvr;#メールサーバ名
$main'FORUMURL = $forumurl;#会議室ホームページ

の追加

Barticle.cgi:
のsub make_article {の最終行に以下の処理追加

#メールアーティクル作成
	$mail_article = <<"EOL";
●タイトル: $ids{'subject'}
●投稿者From: $link 
●日時分: $date
●投稿本体(リンク):$FORUMURL$FORUMROOT/$room/$ref.html
☆ここから投稿内容(html形式で見づらい場合 上の「投稿本体」リンクをご覧ください☆

$text

☆ミ☆彡☆ミ☆彡 ここまで  ☆ミ☆彡☆ミ☆
☆ フォロー投稿は下のリンクからも出来ます ☆
 $FORUMURL$CGIROOT/article.$CGI?room=$post_room&ref=$mes 

EOL

次にsub post_article {の
	open(NEW, ">$FORUMPATH/new_arrival") && close(NEW);
行直前に

#メールホーマット作成(TEXT)
	$mail_body = <<"EOL";
$FORUMTITLE $FORUMURL$CGIROOT/index.cgi
$mail_article
$FORUMTITLE 管理人
EOL

use OLE;
$oBasp = OLE->new('basp21');		#Basp21オブジェクトの作成
#メールの送信
$oBasp->SendMail($SMTPSVR, 			#SMTPサーバ
		"$OWNER"  , 	#宛先 一般
		'tokeon@hotmail.com', #送信元
		"☆ミ $FORUMTITLEへの投稿です($ids{'subject'})☆彡", 	#件名
		$mail_body,
						#本文
		""				#添付ファイルに""を指定
	);



といった具合です。
あとは、
送信先に投稿&参加(ユーザカスタマイズした)人のメールアドレスにも送る事や、
ユーザカスタマイズでメール通知の拒否登録等が出来る用にしたいです。

こういった情報は、どのあたりのスクリプトを参照すればいいでしょうか?