使用条件
- 自作cgi & sendmail が使えるプロバイダー
履 歴
- v3.8 スクリプト修正
- v3.7 送信時のセキュリティ、他修正
- v3.61 〃
- v3.6 送信時のセキュリティ強化修正
- v3.5 受信メールの文字化けを修正
- v3.4 セキュリティ強化
- v3.3 メルアドチェックの不都合を修正
- v3.2 スクリプトのダイエットとノートン・インターネットセキュリティとの関連機能削除
- v3.1.1 v3.1の追加機能とノートン・インターネットセキュリティとの関係の選択機能追加
- v3.1 セキュリティ強化。他のサーバーからのリクエストを拒否。
- v3.0 セキュリティ強化。送信前の確認画面の表示&非表示選択機能追加。
- v2.5 複数のメールアドレスへの送信可
補 足 (及び追加情報)
- 1つのcgiで、複数のメールフォームに対応
- 自動返信機能
- 複数のメールアドレスへの送信可
設置例(FTP)&パーミッション
「cgi-bin」
┗ correo.cgi [705]
┗ mimew.pl [604] Ikuta ichihara Copyright (C)
┗ jcode.pl [604] Copyright (c) 1995-2000 Kazumasa Utashiro
↑プロバイダーによって、cgiを置くフォルダが決まっている場合がある。
【jcode.plの現在/2022.8】
・Perlアップデートとjcode.pl
・古いperlについて
↓以下、html名称変更可。
- sample.html:サンプル・メールフォーム/任意のディレクトリへ
- res_mail.html:サンプル・返信確認html/任意のディレクトリへ
- manual.html:このマニュアルhtml/FTPしない
設置詳細
- 入力フォームhtml(sample.html 参照)
- <form action="./correo.cgi" method="POST">
それぞれのプロバイダーのcgi設置指示において、cgiへのパスを記す。
プロバイダーの指示によっては絶対パス。
例:"../cgi-bin/correo.cgi" とか "http://hpcgi.***.co.jp/~***/correo.cgi"
- 入力フォームにtableを使う場合、<form> と </form>タグは、tableの中に置かない。
ブラウザーによって上手く表示されない場合は、テーブルの中へ記述。
- <input type="hidden" name="subject" value="My homepage感想" alt="">
name="subject" は変更しない。
ホームページ感想や注文、問合せなど幾つかの入力フォームを置く場合、この velue="" 内のタイトルをそれぞれに変える。受け取った時のメールのタイトルになる。
- <input type="text" name="email" size=35 alt="email">
name="email" は変更しない。
- 一般的に、入力フォーム → cgi → の次には「送信ありがとうございました!」など、送信確認が表示される(res_mail.html 参照)。cgi内に記すのも可能だが、ここでは、それぞれオリジナルな名称自由なhtmlを作成。
<input type="hidden" name="location" value="./res_mail.html" alt="">
value="" 内に、cgiからそのhtmlまでのパスを記す。上手く行かない場合は、htmlまでのフルパス(http://www〜)を記す。
これが不要な場合は、空欄(value="")。その場合は、cgi内の設定にて、戻るhtmlを記す。
- 電話、住所、郵便番号、性別などの項目は、用途に合わせて作成可能。
- correo.cgi(初期設定)
- $sendmail = '/usr/sbin/sendmail';
プロバイダーのホームページ仕様等に記されている。
- @mymail 複数のメルアド記入例:
@mymail = (
'info@accitano.com',
'nk@so.net',
'kok506@docomo.co.jp'
);
- $main_mail = 'info@accitano.com';
必ず ' と ' の中に記し、行末は「 ; 」
- $script = './correo.cgi';
このcgiまでのパス。ダメなら絶対パス。
- require './mimew.pl'; # mimew.plまでのパス
- require './jcode.pl'; # jcode.plへのパス
- $preview = '1'; # 送信前に記述確認画面を表示させるか? yes=1 no=0
送信する前に、記述した内容を確認する画面を表示させるかさせないか。
- $max_com = '500'; #最大送信文字数(半角文字数500→全角250文字。''で無制限。)
- $location = '../index.html';
# メール送信後のhtmlへのパス。送信確認用htmlやindex.htmlへなど。
- $res_mail = '1'; # フォームメール送信者に、自動返信メールを送るか? yes=1 no=0
記入したメールアドレスが違った場合などのチェックに、送信者に自動返信。
- # ↓その場合の文章で、文章内に @ と" がある場合は、それぞれその都度、 \@ \" と記す。
- $res_msg = "
この度は、当サイト(http://www.*****.co.jp/***/index.html)からのフォームメールありがとうございました。
ご確認の為に、ご注文内容を以下の通りにお知らせ致します。
また、このご注文に覚えがありませんでしたら、お手数ですが、お知らせ頂ければ幸いです。
***\@****.co.jp
今後とも宜しくお願い致します。
"; # ← この行は消さない
サンプル * sendmailは機能していない。
- correo.cgi sendmailは機能していないので適当に入力してください。
- フローチャート 送られたメールの内容とそれまでの流れを紹介
- カスタマイズ 送料や手数料などを計算するようにプログラムを追加して過去に活用していたもの
- 追記 2007.9
- ダウンロード
【注】Internet Explorer for Windows のセキュリティの初期設定において、上手くダウンロードができない場合がある。
以下の手順で一時的にそれを解除。
- メニューバー:「ツール」→「インターネットオプション」→「セキュリティ」
- 「インターネット」→「レベルのカスタマイズ」
- 画面下の方の「ダウンロード」内「ファイルのダウンロード時に自動的にダイアログを表示」の「有効にする」を◎にする。
- ファイルを単にzip圧縮したものでexeのような自動解凍とかではない。
このスクリプトの使用によるいかなる損害に対して作者は一切の責任を負いません。
でもご意見、アドバイス大歓迎っす。
|