年表CGI
● 概要
年表を作成、検索表示するためのCGIです。
【プログラム】 Parl5.x
【入力 】 カンマ区切りテキストファイル(Shift-JIS)、入力フォーム(HTML)
【出力 】年表(HTML)、入力フォーム(HTML)
(検索系)
カンマ区切りテキストデータを入力し、年表HTMLを出力。
フォーム問合せによる、サーチ、抽出表示。
(更新系)
カンマ区切りテキストデータのソート、(仮)更新、(仮)更新後のテスト検索、最終更新機能。
*フリーCGIです。お問合わせは a---@NetLaputa.ne.jp まで。
● サンプル
- Harley-Davidson Model年表
(The chronological table of Harley-Davidson line-up. )
- 上記CGIのカスタマイズ例(2000.8現在、非配布版)
目的に合わせて機能の分割、カスタマイズを行っています。また、データ件数増加に伴いデータ構造の見直しを行っています。
データ構造が複雑になり、データ作成はアクセスなどで対応しなければならないのが難点。
● ダウンロード
- 年表CGI(Ver.1.03 Beta)
nenpyo.txt ...ダウンロードした後に名前を nenpyo.cgi に変更してください。
- サンプルデータ
|-- chart_parm.txt ...チャートパラメータ
|-- Mark_parm.txt ...マーカーパラメータ。
|-- nenpyom.txt ...年代別モデルデータ。
|-- nenpyo2.txt ...年代別記事データ。
|-- alpha_name.txt ...モデル名称カナデータ。
|-- vin17_10.txt ...年コードデータ。
|-- search_engine.txt ...サーチエンジン連動データ。
● データ仕様
- パラメータ(カンマ区切りテキスト)
- チャートパラメータ(主/従)
- (1行目)チャート1列目に表示するチャートの自年,至年,設定色,説明,
- (2行目)チャート2列目に表示するチャートの自年,至年,設定色,説明,
- (3行目)チャート3列目に表示するチャートの自年,至年,設定色,説明,【同系】,自年,至年,設定色,説明,【同系】,…
- ....
- ....
(注) 同一列に年代の続く別項目を定義する場合には、”,【同系】,”区切りで定義する(3行目の例)。
- マーカーパラメータ(主/従)
- (1行目)マーカーの設定色,説明
- (2行目)マーカーの設定色,説明
- ....
- ....
● 年表CGI 導入方法
- データ(カンマ区切りテキスト)
- 年代別モデルデータ(主)
- (1行目)年,モデルコード,マーカー番号(マーカーパラメータの行番号),URL,タイトル
- (2行目),モデルコード,URL,
- (3行目)年,モデルコード,マーカー番号(マーカーパラメータの行番号)
- (4行目)年,モデルコード,
- (5行目),モデルコード,マーカー番号(マーカーパラメータの行番号)
- ....
- ....
(注1) 直前の年と同一年の場合、年の省略が可能。
(注2) マーカー番号(マーカーパラメータの行番号)を任意に指定。
(注3) URL、URLに対応するタイトルを任意に指定。タイトル省略時は、”モデルコード”部分にリンクする。
- 年代別記事データ(従)
- (1行目)年,記事
- (2行目)年,記事
- ....
- ....
- モデル名称カナデータ(従)
- (1行目)モデルコード,モデル名等
- (2行目)モデルコード,モデル名等
- ....
- ....
- 年コードデータ(従)
- (1行目)年,年コード等,URL,タイトル
- (2行目)年,年コード等,URL
- (3行目)年,年コード等
- ....
- ....
(注) URL、URLに対応するタイトルを任意に指定。タイトル省略時は、”年”部分にリンクする。
- サーチエンジン連動データ(従)
- (1行目)http://サーチエンジン等CGIのURL?サーチキー名=固定項目1+固定項目2+・・・+,サーチエンジンの名前等,
- (2行目)http://サーチエンジン等CGIのURL?サーチキー名=固定項目1+固定項目2+・・・+,サーチエンジンの名前等,
- ....
- ....
(注) 指定サーチエンジンにおいて、指定した固定項目1+固定項目2+・・・と、当該年および当該年における当該モデルをキーにサーチする。
- 後述の 「年表CGI内部の設定」に従って、年表CGIの必要な個所を、テキストエディタで変更します。
(年表CGIはShift-JISで書かれています。)- 年表CGI、データファイルのディレクトリ、データファイルをサーバに配置します。
- 各ディレクトリ、ファイルのパーミッションを例に従って設定します。
<ディレクトリ構成(例)>
/CGIを実行できるディレクトリ
|
|- nenpyo.cgi (chmod 705) 年表 CGI
|
|- /data/ (chmod 707) データファイルを置くディレクトリ
|-- chart_parm.txt (chmod 707) チャートパラメータ
|-- Mark_parm.txt (chmod 707) マーカーパラメータ。
|-- nenpyom.txt (chmod 707) 年代別モデルデータ。
|-- nenpyo2.txt (chmod 707) 年代別記事データ。
|-- alpha_name.txt (chmod 707) モデル名称カナデータ。
|-- vin17_10.txt (chmod 707) 年コードデータ。
|-- search_engine.txt (chmod 707) サーチエンジン連動データ。
|
| * 以下のファイルは作成不要。
|(更新処理時に、コピーファイルを自動で作成します。)
|-- chart_parm_temp.txt チャート(仮)更新パラメータ
|-- Mark_parm_temp.txt マーカー(仮)更新パラメータ
|-- nenpyom_temp.txt 年代別モデル(仮)更新データ
|-- nenpyo2_temp.txt 年代別記事(仮)更新データ
|-- alpha_name_temp.txt モデル名称カナ(仮)更新データ
|-- vin17_10_temp.txt 年コード(仮)更新データ
|-- search_engine_temp.txt サーチエンジン連動(仮)更新データ
- 年表CGI内部の設定。
- perlまでのパスを設定
#!/usr/local/bin/perl
を環境にあわせて変更してください。
- データを保存するディレクトリーのパスの指定
$BaseDir を、環境にあわせて変更してください。
- 年表CGIのURLを指定
$CGIURL を、環境にあわせて変更してください。
- パスワードを変更
$password を、変更してください。データ更新時に必要です。
- データファイル名の変更
@file_name=("chart_parm","Mark_parm","nenpyom","nenpyo2","alpha_name","vin17_10","search_engine");
使用するデータファイル名を変更したい場合に変更します。 (拡張子(txt)を省いた英文字)
@file_name_j=("チャートパラメータ","マーカーパラメータ","年代別モデル","年代別記事","モデル名称カナ","年コード","サーチエンジン連動");
ファイル名に対応する日本語名を変更したい場合に変更します。これは、フォーム上で選択する名前になります。
- 初期表示時に表示する項目の設定
@Form_checked = ("checked","checked","checked","checked","checked","checked","checked");
当該項目を表示するかどうかを指定します。 項目の並びは、@file_nameに対応しています。
この設定では、全項目表示します。 表示する場合には、"checked"、表示しない場合には、""を指定します。
- 初期表示時に抽出する期間の設定
$y_array = "19,0,3-20,0,0"; # 期間(自)-(至)
この設定では、1903年から2000年までの期間を処理します。
- 初期表示時に何年分抽出するかの設定
$Form_Years = "5";
この設定では、抽出期間のなかから5年分のみを処理します。
- フォーム上で選択する西暦上2桁、下2桁、何年分か?の設定
@suji1 = (19,20);
@suji2 = (0,1,2,3,4,5,6,7,8,9);
@Years = (1,5,10,20,50,100);
- HTMLの編集
$body ...TITLEタグ、BODYタグを設定します。
$html_data ...見出し等を、HTMLタグ込みで設定します。
$html_foot ...フッター部分に表示するリンク等を設定します。
(<<'EOT'; および EOT は、いじらないでください。)
● 更新履歴
BACK
- Created 06/11/2000 (Ver.1.00 - Ver.1.01Beta)
- Modified
- 06/12/2000 - 06/13/2000 (Ver.1.02Beta)
- IE5.xにてプルダウンメニューに初期値が表示されない場合があることの対策 → optionタグにselectedオプション追加。
- NNxxにてチャートパラメータ更新時に文字化けすることの対策 → データ仕様とプログラム変更。
- 06/16/2000 (Ver.1.03Beta)
- データ更新時におけるソート、逆順ソートオプション機能を追加。*ソートを行う意味があるのは、年代別モデルデータに対してのみです。
- チャートパラメータのデータ仕様について項目の並びを変更。
- Ver.1.02Betaで対策したチャートパラメータの区切り文字が、エクセルの関数とバッティングしていたことの対策→データ仕様について区切り文字変更。