cgi スクリプト

練習計画カレンダー

for UNIX (perl5) [Free]


練習日程の調整を web 上で可能にする、練習計画作成 cgi です。2100年12月までの万年カレンダー付き。 土曜、日曜、祝日が自動的に練習日の候補日としてリストされ、候補日の午前/午後/夜それぞれの都合を、○×△で記入できます。 もちろんあとから平日を練習日の候補とすることもできます。全員の都合が一目で見渡せますので、 日程の調整が非常にやりやすくなりますし、常に一ヶ所に情報をまとめておけるので、連絡の行き違いも起こりにくくなります。

各メンバーは、自分の予定が立った時点で都合を書き込みます。あとは、全員の都合を全員の都合が良さそうな日を、 メーリングリストなり掲示板なりで決定すれば OK。全員顔を揃えなければ練習日が決められない、という非効率を解消します。 万年カレンダーには、他団体の予定なども自由に記入できますので、練習日決定の参考にすることができます。

Version 0.2 Update! (2004/10/13)


◎利用規程

※重要な注意事項
このスクリプトは、ネットサーフレスキュー[Web裏技]で公開されている「電子日記帳 WebDIARY」を改造したものであり、同サイトの「プログラム利用規定」に従って再配布についての許可を得ています。利用する際には、本利用規程のほか、ネットサーフレスキュー[Web裏技]の「プログラム利用規定」も遵守してください。また、このスクリプトについてネットサーフレスキュー[Web裏技]に問い合わせることはしないでください。ネットサーフレスキュー[Web裏技]では改造スクリプトについてのサポートは一切行っていません。

◎設置方法
◇ 配置構成の例([ ]内はパーミッション値)
  |
  |-- /data/  [777] ... データ保存ディレクトリ
  |    |-- anniversary.dat  [666] ... 記念日データファイル。空のテキストファイルを用意。
  |    |-- members.dat  [666] ... メンバー一覧ファイル。空の(または後述の書式にしたがって記述した)テキストファイルを用意。
  |-- diary.cgi  [755] ... 本ページからダウンロードして、拡張子を cgi に変更する。
  |-- cgi-lib.pl  [644] ... マルチパート対応 CGI ライブラリ。最新版は http://cgi-lib.stanford.edu/cgi-lib/ から入手。
  |-- jcode.pl  [644] ... 日本語コード変換ライブラリ。最新版は ftp://ftp.iij.ad.jp/pub/IIJ/dist/utashiro/perl/ から入手。

以上のファイルをすべてアスキーモードでサーバに転送してください。

◇ 起動方法

HTML ファイルに以下のようなリンクを作成してください。
<A HREF="diary.cgi?action=enter">練習計画作成カレンダー</A>
ブラウザ上でこのリンクをクリックすると、メンバーの名前の選択画面になります。初期状態では誰も登録されていないはずですので、[メンバー編集]をクリックして必要なだけメンバーを登録してください。メンバー登録が完了したら、[終了]をクリックして名前の選択画面に戻り、適当な名前を選択して[続ける]を押してください。するとカレンダーと名前の一覧が表示されるはずです。

◇ 注意事項

  1. perl5 用です。perl4 では動きません。プロバイダによっては、スクリプト第1行目の perl のパスを書き換える必要があります。
  2. METHOD=POSTが使えるサーバであることが条件です。
  3. 祝祭日は法律によって定められますので、過去の日程は必ずしも正しくありません。
  4. 書き込みにあたってパスワード等は使用しないので、セキュリティ維持のためには、ディレクトリごとアクセス制限するなどの工夫が必要でしょう。

◇ メンバー一覧ファイルの書式について

ブラウザ上でひとりひとりメンバー登録をするのは面倒だ、という方もいらっしゃるかもしれませんので、メンバー一覧ファイルの書式について説明しておきます。メンバー数が多い場合は、ローカルで表計算ソフトなどを用いてファイルを作っておき、それをサーバに転送した方が面倒は少ないでしょう。

メンバー一覧ファイルは、以下のような書式になっています。
1:メンバー1:0:0::
2:メンバー2:0:1::
3:メンバー3:0:0::
4:メンバー4:0:0::
という具合に、6つのフィールドを半角コロンで区切っています。それぞれのフィールドの意味は以下の通りです。
第1フィールド:1から始まる通し番号
第2フィールド:メンバーの名前
第3フィールド:予約済み。0を記入。
第4フィールド:名前の非表示フラグ。一覧表上で名前を表示しない場合1、表示する場合0。上の例でいうと、「メンバー2」だけが一覧表上に表示されない。
第5フィールド:予約済み。未使用。
第6フィールド:予約済み。未使用。
以上のような書式でメンバー一覧ファイルを作成し、サーバに転送すれば、cgi 上でメンバー登録せずともメンバー一覧が表示されます。

◎サンプル

評価用サンプルです。一部機能を制限してあります。

◎ダウンロード
diary.txt ※ダウンロード後拡張子を .cgi に変更してください。
cgi-lib.pl
jcode.pl



戻る