フォームクリエーター

ダウンロードと公開

 問題がなければ、「フォーム作成」ボタンを選択して公開用プログラム一式を作成します。

 選択後に、一般公開用のプログラム一式を保存したZIPファイルがダウンロードされますので、ダウンロードをしたZIPファイルを展開後に、FTP等でWebサーバーにアップロードをすれば公開完了です。

 ダウンロードをしたZIPファイルには、これらの構成となります。

ファイル・ディレクトリー名 種類 概説
store dir データ保存ディレクトリー
temp dir ファイルアップロード用テンポラリーディレクトリー
dummy.txt file フォルダー作成用のダミーファイル
.htaccess file アクセス制御
count.txt file シリアルカウント保存ファイル
ContactBean.class.php file ビーンファイル
ContactController.class.php file コントローラーファイル
ContactListData.php file リスト情報保存ファイル
ContactSettings.php file 設定保存ファイル
ContactUtils.php file 共通ユーティリティー保存ファイル
csv.php file フォーム申し込み内容のCSVダウンロードページ
download.php file アップロードファイルのダウンロード用ページ
env-check.php file 環境チェックファイル
remove-data.php file 申し込み情報削除実行ファイル
remove-temp.php file テンポラリーファイル削除ページ
index.php file フォーム申し込み初期化ページ
input.php file フォーム申し込み入力・エラー表示ページ
check.php file フォーム申し込みエラーチェックページ
confirm.php file フォーム申し込み内容確認ページ
commit.php file フォーム申し込み内容処理ページ
report.php file フォーム申し込み報告ページ
view.php file フォーム申し込み内容簡易表示ページ
※「ContactBean.class.php」「ContactController.class.php」「ContactListData.php」「ContactSettings.php」「ContactUtils.php」の各ファイルの「Contact」については、任意に変更可能です。

各ファイルの説明

1.データ保存ディレクトリー
 お申し込み情報をサーバー内に保存する場合に、利用するディレクトリーです。
 簡易管理ページ用のXMLファイルや、CSV保存を行う場合に、当該ディレクトリーにファイルを保存していきます。
 なお、当該ディレクトリーは、設定保存ファイルの編集により任意のディレクトリーに移動できます。

2.ファイルアップロード用テンポラリーディレクトリー
 アップロードファイルが有る場合に、アップロード済みファイルを一時保存するためのディレクトリーです。

3.フォルダー作成用のダミーファイル
 確実にファイルアップロード用テンポラリーディレクトリーで作られる為のダミーファイルです。
 アップロード後には意味が無いので消してしまっても問題ありません。

4.アクセス制御
 データ保存ディレクトリーへのアクセス制限を定義しています。
 デフォルトではWeb経由からのアクセスを禁止していますので、申し込み内容が外部から参照できないようにいたします。
 フォームの処理とは関係ないので、任意に設定を変更していただいても問題ありません。

5.シリアルカウント保存ファイル
 簡易管理ページやCSV保存を行う場合に作成されるファイルで、シリアルナンバーを保存します。
 シリアル番号は、6桁の続き番号となります。

6.ビーンファイル
 フォームの申し込み内容や、申し込み内容に対する検証結果を保存するクラスです。
 セッションへの保存や、表示内容への情報の受け渡しに利用します。

7.コントローラーファイル
 ビーンの初期化や、HTMLフォームからの情報の取得、取得内容の検証、保存用情報の作成を行うクラスです。
 基本的にビーンクラスと共に利用します。

8.リスト情報保存ファイル
 HTMLフォームでリスト要素となる、ラジオボタンやプルダウンメニュー、チェックボックスやマルチセレクトボックスの内容を保存します。

9.設定保存ファイル
 フォームでテストや運用に併せて設定変更が必要な情報を集めたファイルです。
 基本的に、当該ファイルへの編集だけで完了する構造になっています。

10.共通ユーティリティー定義ファイル
 フォームで利用する共通のユーティリティー関数やクラスを定義しています。

11.フォーム申し込み内容のCSVダウンロードページ
 申し込みを行われた内容をCSV保存したファイルのダウンロードを行います。
 デフォルトでは、シリアルナンバーが判れば任意に閲覧出来ますが、設定保存ファイルへのID/PASSを設定する事で、BASIC認証を行わせる事が出来ます。

12.アップロードファイルのダウンロード用ページ
 サーバー上にアップロードされているファイルのダウンロードページです。
 デフォルトでは、シリアルナンバーとファイル番号が判れば任意に閲覧出来ますが、設定保存ファイルへのID/PASSを設定する事で、BASIC認証を行わせる事が出来ます。

13.環境チェックファイル
 フォームの環境チェックを行うページです。
 簡易管理ページや、CSV保存を行う場合に、書き込みを行えるか等の環境チェックを行います。
 通常は、サーバーへのアップロード後に確認を行い、削除してください。

14.申し込み情報削除実行ファイル
 保存している申し込み内容の削除を行い、シリアルナンバーの初期化を行います。
 通常は、テストを行った後に本番運用を行う前に実行して、テスト時のデータを消すために利用します。
 非常に危険なので、本番運用前に必ずサーバー上から削除してください。

15. テンポラリーファイル削除ページ
 ファイルアップロード用テンポラリーディレクトリーの中に残っている古いファイルを削除するページです。
 通常は、処理の完了時に削除されますが、アップロード後の確定前に利用者が離脱した場合には、テンポラリーファイルが残るのでそのファイルを削除します。
 デフォルトでは、24時間経過したファイルを対象としています。

16.フォーム申し込み初期化ページ
 セッションの初期化を行います。
 通常は、フォームの開始は、当該ページとなります。
 他のページでも、セッション情報がない場合は、自動的に当該ページ遷移をして初期化処理を行います。

17.フォーム申し込み入力・エラー表示ページ
 フォームの内容を入力するページです。
 フォーム申し込みエラーチェックページでの検証で問題が有った場合は、エラー表示付きで当該ページを表示します。

18.フォーム申し込みエラーチェックページ
 フォーム申し込み入力・エラー表示ページで入力をした内容を取得し、ビーンに設定を行い、入力内容の検証を行います。
 問題がなければ、フォーム申し込み内容確認ページに遷移します。
 問題が有る場合は、フォーム申し込み入力・エラー表示ページに遷移します。

19.フォーム申し込み内容確認ページ
 入力内容の確認を行うページです。確認ページが不要な場合は存在しません。
 問題がなければ、フォーム申し込み内容処理ページに遷移します。

20.フォーム申し込み内容処理ページ
 各種確定処理を行います。
 設定によりますが、メール送信、簡易管理ページ用のXML保存、CSV保存を行います。

21.フォーム申し込み報告ページ
 サンキューページを表示します。
 このページを表示した時点で、申し込みに利用したセッション情報を削除しますので、仮に、戻る等で当該画面に遷移してもフォーム申し込み初期化ページへ遷移いたします。

22.フォーム申し込み内容簡易表示ページ
 簡易管理ページで保存されている申し込み情報を保存します。
 デフォルトでは、シリアルナンバーが判れば任意に閲覧出来ますが、設定保存ファイルへのID/PASSを設定する事で、BASIC認証を行わせる事が出来ます。

運用開始後の調整

 簡単な所でテスト向け等で、送付先アドレスを変えたい場合は、BCCに送付先を追加したい場合は、1ヵ所にまとまった設定ファイルを修正するだけで、色々な対応を行える様に成っています。

※ただし、この設定には、PHPのファイルを有る程度修正できる知識が必要になります。

 以下は、設定ファイルの抜粋です。

// 全メール送付に共通のメールヘッダー設定です。
// メールのFROM、TO、CCで利用する名前付きメールアドレスの書式です。
define( 'MAIL_ADDRESS_TEMPLATE' , '%name% <%address%>' );
// 以下をコメントアウトして、内容を記述すると、対応するヘッダーを追加できます。
// define( 'MAIL_REPLY_TO' , '' );
// define( 'MAIL_ERRORS_TO' , '' );
// 以下をコメントアウトするか、falseをしているすると、mail関数で-fオプションを利用しなくなります。
define( 'MAIL_USE_F_OPTION' , true );

// 全メール送付に共通のアドレス追加設定です。
// defineParam( 'MAIL_TO_LIST' , 'address' , '名前' );
// defineParam( 'MAIL_CC_LIST' , 'address' , '名前' );
// defineParam( 'MAIL_BCC_LIST' , 'address' );
defineParam( 'MAIL_BCC_LIST' , '****@hotcore.jp' );

// Mail1のアドレス設定です。
// defineParam( 'MAIL1_TO_LIST' , 'address' , '名前' );
// defineParam( 'MAIL1_CC_LIST' , 'address' , '名前' );
// defineParam( 'MAIL1_BCC_LIST' , 'address' );

// Mail2のアドレス設定です。
// defineParam( 'MAIL2_TO_LIST' , 'address' , '名前' );
defineParam( 'MAIL2_TO_LIST' , '****@hotcore.jp' , 'フォーム作成担当' );
// defineParam( 'MAIL2_CC_LIST' , 'address' , '名前' );
// defineParam( 'MAIL2_BCC_LIST' , 'address' );

// HTMLでbaseタグを利用している場合等に、フォームの絶対URLを入れてください。
// 以下は、リクエストからURLを作成していますので、実際とは異なる場合が有ります。
define( 'FORM_URL' , dirname( (( isset( $_SERVER[ 'HTTPS' ] ) && $_SERVER[ 'HTTPS' ] == 'on' ) ? 'https://' : 'http://' ) . $_SERVER[ 'HTTP_HOST' ] . $_SERVER[ 'PHP_SELF' ] ) . '/' );

define( 'STORE_DIR' , 'store' );
define( 'STORE_BASE' ,  dirname( __FILE__ ) . '/' . STORE_DIR . '/' );
define( 'COUNTER_FILE' , STORE_BASE . 'count.txt' );

// 簡易表示ページ用のXML保存ページのファイル名の雛型です。
define( 'XML_FILE_NAME' , 'store%serial%.xml' );
// 簡易表示ページのメールに表示される簡易表示ページのURLです。
define( 'TINY_VIEW_URL' , FORM_URL . 'view.php' );

// CSVダウンロードページ用のCSV保存ページのファイル名の雛型です。
define( 'CSV_FILE_NAME' , 'form%serial%.csv' );
define( 'CSV_TEXT_ENCODE' , 'SJIS-win' );
// CSVダウンロードページのメールに表示される簡易表示ページのURLです。
define( 'CSV_DOWNLOAD_URL' , FORM_URL . 'csv.php' );

// 簡易表示ページやCSVダウンロードページでBASIC認証利用の設定です。
// 以下は、認証時に表示するメッセージです。英数以外は文字バケする恐れがあります。
define( 'BASIC_AUTH_MESSAGE' , 'Plase input id and passord.' );

// 簡易表示ページでBASIC認証を行う場合は、コメントを外して以下のID/PASSを設定して下さい。
// 複数のID/PASSを設定する場合は、複数の定義をして下さい。
// defineParam( 'BASIC_AUTH' , 'auth-id' , 'auth-pass' );