@niftyメールデコード活用CGI
それがたとえどんなに簡単なプログラムであっても、フローチャートを書いてとりかかることはとても重要です。
私がプログラムを書き始めた当初は、なんどもテストしては書きなおす作業の
繰り返しでプログラムを作っていましたが、それではどうしてもバグが紛れ込むので、最近は、
相当細かい段階までフローチャートを書くことが多くなりました。
いったん、フローチャートに書き出しておくと、実際のプログラム作成が効率的になり、それにかかる時間が大幅に節約されるだけでなく、ミスが少なくな
り、かつ他の言語に移植するのも簡単になります。
フローチャートには、JISで決まった書き方が決まっているので、他人と開発を共有する場合は、そのルールに従わなければならないのですが、自分で書く
時はあまりこだわらなくて良いでしょう。主に使う記号は次のようなものです。(背景が
この色のもの
は重要!!)
重要度1
|
重要度2
|
重要度3
|
重要度4
|
重要でない
|
自分だけがわかれば良いのなら、最低限
重要度1だけでもフローチャートは書けます。

|
端末
フローチャートの最初と最後など
|

|
準備(前処理)
|

|
入出力
ファイルへの書き出しや読みこみ
|

|
結合子(コネクター)
ページ内での接続に
|

|
処理
計算や代入など
|

|
画面
(ディスプレイ)
|

|
他のページコネクタ
|

|
定義済み工程
|

|
手動入力
キーボードからの入力など
|

|
判断
|

|
ループの開始
|

|
文書
|
|
|

|
ループの終わり
|

|
オンライン記憶
|
フローチャートの書き方は、このページの目的ではないのでより知りたい方は、下記のページなどを参考にしてください。
自分のしたいことを整理する。
まず、「送信前に確認画面を表示するCGI」について、それが何をするものなのかを正しく理解しておきましょう。
- 訪問者にフォームに記入して送信してもらう。
- それを受け取ったら、そのデータを検証しエラーの有無を確認する。
利用者から見た操作
処理
|
説明
|

|
- ブラウザのURL欄にURLを入力、またはリンクをクリック
3
- 入力用フォームが表示される。
- 入力
送信ボタンをクリック
- 画面が表示される。
- それが、最初の登録用フォームなら(3)に戻る。
確認画面なら、次へ
- 内容を確認して
- 書きなおしたければ[戻る]をクリック
よければ[送信]をクリック
- 完了画面が表示される。
|
プログラムの処理
フォームを利用する立場から見た処理の流れを元に、プログラムの処理をフローチャートに書き出して見ます。
処理
|
説明
|

|
- HTTPサーバーから起動される。
- 標準入力・QUERY_STRINGの値を$bufferに格納
- $bufferの有無
- $bufferが何も無ければ初期画面用データの作成(6)へ
- $bufferがあれば、エラーチェック(5)へ
- エラーチェック
訂正の場合もエラーとして処理する。
入力をチェックし、エラーの数をカウントする。
- エラーがあれば、初期画面用データの作成(6)ヘ、なければ、確認画面用データの作成(8)へ
- 初期画面用のデータを作成
- 初期画面(フォーム)を表示。
- 確認画面用データの作成
- 確認画面の表示
確認画面のHTMLは、@nifty:メールデコードへの送信フォーム
|