11/27(Wed) 21:58
■ ハッピーバースデイ3(プロバイダー提供メール送信CGI版)の作り方
■(04.02.21)「敬老の日」が2003(平成15)年から9月第3月曜日になる「祝日法」の改正に未対応だったのを対応するように修正。最新版のbirthday.cgi(v3.5)をダウンロードしbirthday.cgiのみ入れ替えをお願いします
ハッピーバースデイV3.xはsendmailが使えるサーバをご利用の方を対象にしていますが、sendmailが使えなくても、プロバイダーがメール送信CGIを提供してる場合はこのサービスを活用してハッピーバースデイV3.xの利用が可能です。
ダウンロードや設置解説はハッピーバースデイ3(sendmail版)をご覧ください。
(補足)sendmailやプロバイダー提供メール送信CGIが使えないプロバイダーでもV3.xはmailto送信が可能です。この場合は、メーラによるフォームメール送信(IE5やNN4)かメーラが起動し通常のメール送信(IE6やNN7)になりV2.xと同様メルアド非公開にはなりません。
■ sendmail版とメール送信CGI版とのメール機能の相違は以下のとうりです。
項目 | sendmail版 | メール送信CGI版 | (参考)mailto送信 |
登録・変更・削除通知メール | ○ | × | × |
お祝いメール送信 | ○ | ○ | ○ |
変更・削除キー問合せ | ○ | ○ | ○ |
■ プロバイダーとメール送信CGI
(プロバイダー名をクリックするとプロバイダーのメール送信CGI説明ページへジャンプします)
プロバイダー | サービス名称 | メール送信CGI名 | メール送信CGIのパス | 備考 |
infoweb | FORMでアンケート | mail | /cgi-bin/mail | − |
@nifty | メールデコード | ahpmdec.cgi | http://mdec.nifty.com/cgi-bin/ahpmdec.cgi | − |
OCN | フォームCGIメール | formmail.pl | /cgi-bin/formmail.pl | − |
Plala | メール送信CGI | mailsend.cgi | http://www**.plala.or.jp/cgi-bin5/mailsend.cgi | − |
DION | メール送信CGI | mail2.cgi | /cgi-bin/mail2.cgi | − |
BIGLOBE | メール送信 | mail.cgi | http://www**.biglobe.ne.jp/vpack/mail/mail.cgi | − |
hi-ho | フォームメール | form-to-mail | /cgi-bin/user/username**/form-to-mail | ssendmail利用も可 |
■ プロバイダーごとの変更方法
オリジナルソースはinfowebの記述になっています。infoweb以外のプロバイダーでの動作は確認できてませんが、この記述で動作するはずです。他のプロバイダーで動作確認できた方は掲示板に情報提供をお願いいたします。
- birthday.cgiの個人設定変更
- ・birthday.cgi 138行目 $s_mail = 2;に変更
- ・birthday.cgi 140行目 $formmail = '/cgi-bin/mail';をあなたのプロバイダーの項No1と置換え
- common.cgiのメール送信パラメータ記述変更
- ・common.cgiの103〜105行目(お祝いメール送信部)をあなたのプロバイダーの項No2〜No5(6)と置換え
- ・common.cgiの196〜198行目(変更・削除キー問合せ部)をあなたのプロバイダーの項No2〜No5(6)と置換え
- たあとNo3中の$temp[3]を$mailtoに変更する
項目 | To | Cc |
お祝いメール送信 | 登録者($temp[3]) | 管理者($form{'frmail'}) |
変更・削除キー問合せ | 管理者($mailto) | 問合者($form{'frmail'}) |
(注)infowebの場合、CGI名に続けて複数の送信先メールアドレス指定ができますのでToアドレス($temp[3])とCcアドレス($form{'frmail'})の2つを指定しています(右図およびオリジナルソース参照)。
調べた範囲ではBIGLOBEはToとCcの2つを指定できますが、他のプロバイダーはToアドレス指定のみになっています。Ccアドレス指定の可否および方法については各プロバイダーに問い合わせてください。
(参考:オリジナルソース)
・$formmail = '/cgi-bin/mail';
・print "<form action=\"$formmail?$temp[3],$form{'frmail'}\" method=\"post\">\n";
・print "<input type=hidden name=\"_subject\" value=\"$subjectf\">\n";
・print "<input type=hidden name=\"_from\" value=\"$form{'frmail'}\">\n";
■ @nifty(動作確認 by 西さん)
- $formmail = 'http://mdec.nifty.com/cgi-bin/ahpmdec.cgi';
- print "<form method=\"post\" action=\"$formmail\">\n";
- print "<input type=hidden name=\"to_mail\" value=\"$temp[3]\">\n";
- print "<input type=hidden name=\"sub\" value=\"$subjectf\">\n";
- print "<input type=hidden name=\"from\" value=\"$form{'frmail'}\">\n";
- print "<input type=hidden name=\"ok_page\" value=\"$script\">\n";
(注)birthday.cgiの「$script」を相対パスで記述してる方はhttp://から始まるURL記述に変更します。
■ OCN
- $formmail = '/cgi-bin/formmail.pl';
- print "<form method=\"post\" action=\"$formmail\">\n";
- print "<input type=hidden name=\"recipient\" value=\"$temp[3]\">\n";
- print "<input type=hidden name=\"subject\" value=\"$subjectf\">\n";
- print "<input type=hidden name=\"email\" value=\"$form{'frmail'}\">\n";
■ Plala
- $formmail = 'http://www**.plala.or.jp/cgi-bin5/mailsend.cgi';
- print "<form method=\"post\" action=\"$formmail\">\n";
- print "<input type=hidden name=\"to\" value=\"$temp[3]\">\n";
- print "<input type=hidden name=\"subject\" value=\"$subjectf\">\n";
- print "<input type=hidden name=\"from\" value=\"$form{'frmail'}\">\n";
■ DION
- $formmail = '/cgi-bin/mail2.cgi';
- print "<form action=\"$formmail\" method=\"post\">\n";
- print "<input type=hidden name=\"to\" value=\"$temp[3]\">\n";
- print "<input type=hidden name=\"subject\" value=\"$subjectf\">\n";
- print "<input type=hidden name=\"from\" value=\"$form{'frmail'}\">\n";
■ BIGLOBE
- $formmail = 'http://www**.biglobe.ne.jp/vpack/mail/mail.cgi';
- print "<form method=\"post\" action=\"$formmail\">\n";
- print "<input type=hidden name=\"_to_\" value=\"$temp[3]\">\n";
- print "<input type=hidden name=\"_cc_\" value=\"$form{'frmail'}\">\n";
- print "<input type=hidden name=\"_subject_\" value=\"$subjectf\">\n";
- print "<input type=hidden name=\"_from_\" value=\"$form{'frmail'}\">\n";
■ hi-ho(動作確認 by 藤代湖都音さん)
- $formmail = '/cgi-bin/user/username**/form-to-mail';
- print "<form action=\"$formmail\" method=\"post\">\n";
- print "<input type=hidden name=\"email\" value=\"$temp[3]\">\n";
- print "<input type=hidden name=\"subject\" value=\"$subjectf\">\n";
- print "<input type=hidden name=\"location\" value=\"(http://から始まるジャンプしたいURL)\">\n";
(注)5行目のlocation行がないとメールは送信されますがエラー表示されます。
|