[Perl CGI]の検索結果


オンラインショップの商品が注文された際に顧客に注文内容の確認メールを送信したり、掲示板にコメントが書き込まれた際に管理人宛てに通知メールを送信したりするには、フォームで入力された項目の内容をCGIからメールとして送信する必要が あります。

一般的なレンタルサーバーでCGIからメールを送信する場合の基本的な処理手順は次のようになります。

1.フォームから入力された各項目の値をパラメータから取得
2.subject(件名)をMIME-Base64形式に変換
3.メッセージを作成
4.メール送信する文字列の文字コードをJISに変換
5.sendmailを使用してメールを送信

下記のCGIスクリプト(UTF-8)はレンタルサーバー等で利用可能なsendmailを使用してフォームから入力された、Subject、宛先メールアドレス、差出人、本文を使用してメールを送信するサンプルプログラムです。


--- mailform.html (入力フォーム) ---
<html>
<head>
<meta http-equiv="content-type" content="text/html; charset=utf-8">
<title>メールフォーム</title>
</head>
<body>
<h1 class="title">メールフォーム</h1>
<form method="post" action="sendmail.cgi">
<input type="hidden" name="a" value="exec">
件名(Subject) :<br />
<input type="text" name="subject" size="80" value=""><br />
宛先(To) :<br />
<input type="text" name="to" size="80" value=""><br />
差出人(From) :<br />
<input type="text" name="from" size="80" value=""><br />
本文(Body) :<br />
<textarea name="body" rows="10" cols="65"></textarea><br />
<p>
<input type="submit" value="送信">
</p>
</form>
</body>
</html>

--- sendmail.cgi (メール送信CGI) ---
#!/usr/bin/perl
use strict;
use warnings;

use CGI;
use Encode;

my $cgi = CGI->new();

# パラメータからフォームの入力値を取得
my $subject = $cgi->param('subject');
my $to = $cgi->param('to');
my $from = $cgi->param('from');
my $body = $cgi->param('body');

# subject(件名)をMIME-Base64形式に変換
$subject = Encode::encode('MIME-Header-ISO_2022_JP', $subject);

# メッセージを作成
my $message = <<"END_MESSAGE";
From: $from
To: $to
Subject: $subject
Mime-Version: 1.0
Content-Type: text/plain; charset=iso-2022-jp
Content-Transfer-Encoding: 7bit

$body
END_MESSAGE

# メール送信する文字列の文字コードをJISに変換
Encode::from_to($message, 'utf8', '7bit-jis');

# sendmailを使用してメールを送信
my $sendmail_path = '/usr/sbin/sendmail';  # sendmail path
open my $mailh, "| $sendmail_path -t -oi $to";
print {$mailh} $message;
close $mailh;

# 送信終了を表示
my $html = <<"END_HTML";
<html>
<head>
<meta http-equiv="content-type" content="text/html; charset=utf-8">
<title>送信終了</title>
</head>
<body>
<p><big>送信終了</strong></big></p>
</body>
</html>
END_HTML
print "Content-Type: text/html\n\n", $html;

なお、フォームからのパラメータの受け取りにはCGIモジュールを、メール本文の文字コードの変換やsubject(件名)の MIME-Base64形式への変換にはPerl 5.8以降では標準モジュールなっているEncodeモジュールを使用しています。

また、このサンプルでは、処理手順をわかりやすくするために、入力チェックなどの実際に運用する場合に必要な処理を行ってませんが、入力チェック処理も含まれたより実用的なシンプルなメールフォームCGIの無料配布(ライセンスはGPL)も行っていますので、よろしければご活用ください。

[2178] Posted by kagahiro at 2010/08/05 14:39:39
2 point | Link (7) | Trackback (0) | Comment (2)

無料で配布している掲示板CGI(59bbsとは別の簡易掲示板CGIをバージョンアップしました。

HTML::Templateを使用してUIの部分をできるだけプログラムから取り除き、テンプレートファイルで記述するように変更しました。これによってページデザインのカスタマイズがより簡単になると思われます。

なお、機能については特に変更はありません。

掲示板CGI

[2150] Posted by buzei at 2010/07/25 18:08:12
0 point | Link (1) | Trackback (0) | Comment (0)

「さくらのレンタルサーバ」は、さくらインターネットが提供している個人向けレンタルサーバーサービスで最も料金の安い「ライト」は月額125円(1年契約の場合)から利用できる。

月額125円の「ライト」では、PHPやMySQLの利用は出きないが、データベースを必要としないPerl、Ruby、PythonのCGIであれば動作させることが可能。

また、インストール作業なしにレンタルサーバのコントロールパネルから設定するだけでブログを作成することできる「さくらのブログ」という機能があり、さくらインターネットでドメインを取得すると独自ドメインでの 運用も可能。利用料金は月額125円/1Gなので、有料のブログサービスを利用するより安く独自ドメインのブログを作成することができる。

さらに、月額500円の「スタンダード」プランではPHPやMySQLの利用も可能で、オープンソースのブログソフトのWordPressやMTOS(Movable Type Open Source)のインストールも簡単にできる。

さくらのレンタルサーバ

[2026] Posted by buzei at 2010/06/28 20:52:25
0 point | Link (5) | Trackback (0) | Comment (0)

「PHP 2chBBS」とは鏡の国の「PHP 2chBBS」は、ネット上に流出していたread.cgi、bbs.cgiをPerlからPHPに移植した2ch風のスレッドフロート掲示板。ディレクトリ構成やログ形式などもそのまま受け継がれており、2ちゃ...
[1992] Posted by buzei at 2010/06/20 17:40:50
4 point | Link (6) | Trackback (0) | Comment (4)

マルチユーザー対応のブログソフトウェア59Tracker 4.1」をリリースしました。59Tracker 4.1ではデータファイルのレイアウト変更はないものの、プログラム関連のファイル構成およびプログラムの内容は大幅に変更さ...
[1966] Posted by kagahiro at 2010/06/15 00:23:32
0 point | Link (1) | Trackback (0) | Comment (0)

オープンソースのWeb掲示板ソフト「59bbs 3.1」をリリースしました。59bbs 3.1ではデータファイルのレイアウト変更はないものの、プログラム関連のファイル構成およびプログラムの内容は大幅に変更されています。主な...
[1953] Posted by kagahiro at 2010/06/12 00:23:35
0 point | Link (2) | Trackback (0) | Comment (0)

「KENT WEB」は、CGI/Perlによるプログラムを主に初心者向けに、フリーソフトとして配布しているサイト。掲示板、チャット、アクセスカウンターなどさまざまなPerlで書かれたCGIを配布しているほか、初心者向けのCGI...
[1930] Posted by buzei at 2010/06/07 11:10:52
0 point | Link (3) | Trackback (0) | Comment (0)

掲示板CGIは、ホームページに簡易掲示板を設置するためのシンプルな無料のPerlスクリプト(CGI)です。新規スレッドやコメントの投稿は誰でも可能ですが、スレッドやコメントの削除は管理者のみ可能(管理者パスワー...
[1905] Posted by kagahiro at 2010/06/02 00:22:35
0 point | Link (6) | Trackback (0) | Comment (0)

ブックマークCGIは、コメント可能な公開ブックマークをホームページに追加することができるPerlスクリプトです。ブックマークレットを使用してブラウザで開いているWebページを簡単にブックマークできます。ブックー...
[1863] Posted by kagahiro at 2010/05/20 00:26:35
0 point | Link (3) | Trackback (0) | Comment (0)

Q&A CGIは、ユーザーからの問い合わせをホームページ上で管理するための無料Perlスクリプトです。ユーザーが投稿した問い合わせはホームページ上で公開され、他のユーザーも閲覧可能ですが、問い合わせへの回答と削...
[1859] Posted by kagahiro at 2010/05/19 00:47:44
0 point | Link (2) | Trackback (0) | Comment (0)

|< 先頭へ  < 前へ  1 2 3 4 5  次へ >


アクセスランキング

今日のアクセスランキング(上位10件)

  1. [大阪維新の会]大阪市交通局の市長選支援職員リスト捏造事件 (12 PV)
  2. 日本IT漫画新聞 (11 PV)
  3. NBA ジャージ (10 PV)
  4. スクエニ和田洋一社長、FF14の不評を認める (9 PV)
  5. ブレイドクロニクル RMT (9 PV)
  6. 鳩山辞任で民主党支持率急回復、ネトウヨ狼狽 (9 PV)
  7. ヨルダン政府、ヨルダン人パイロット殺害の報復としてリシャウィ死刑囚の死刑を執行 (8 PV)
  8. 藤原紀香、陣内智則夫妻が離婚 (8 PV)
  9. 財政の崖(フィスカル・クリフ) (8 PV)
  10. アナログマとは (8 PV)

今月のアクセスランキング(上位10件)

  1. 掲示板フリーソフト - 無料で利用できる掲示板CGI (27 PV)
  2. 掲示板やチャットなどのフリーPHPスクリプトの配布サイト (21 PV)
  3. k本的に無料ソフト・フリーソフト (14 PV)
  4. 【速報】パナマ文書に記載されている日本企業、日本人の一覧リスト (14 PV)
  5. WebRMT【ウェブRMT】-ラペルズ-RAPPELZ-RMT (13 PV)
  6. NBA ジャージ (13 PV)
  7. 紅茶に含まれる成分が骨粗しょう症に効果 体重60キロなら3日に一度60杯の紅茶を飲めば効果:お料理速報 (13 PV)
  8. [大阪維新の会]大阪市交通局の市長選支援職員リスト捏造事件 (13 PV)
  9. 日本IT漫画新聞 (13 PV)
  10. スクエニ和田洋一社長、FF14の不評を認める (12 PV)

アクセス統計

ディレクトリ

関連サイト