美容室まゆ予約システム


■ 機能
ネットで予約を受けるときに使用します。美容室用です。顧客に、予約日時や指名スタッフ、希望するコースなどを選択させて予約を受け、確認メールを送ります。同時にお店の担当者にも通知メールを送ります。お店の担当者が電話予約を簡単に入力する機能もあり、ホームページ上ですべての予約状況を確認できます。管理ページでは、スタッフの登録、予約データや顧客データの表示と削除、臨時休業日(夏休みや年末年始の休みなど)の設定、本日を過ぎた予約データと顧客データの削除などが行えます。(※ご利用前に「利用規約」をご確認ください)

■ サンプル
いろいろご自由に試してみてください。ただし、データファイルの更新やメールの送信はできないようにしています。
「美容室まゆ」予約ページ



――――→
「美容室まゆ」管理ページ










■ ダウンロード
以下をダウンロードした後、圧縮・解凍ソフトで解凍してください。
(71KB)

■ 同梱ファイル
全部で29個あります。以下はその簡単な説明です。

(説明ファイル)
readme.htm - 利用方法を説明したファイル

(初期設定ファイル)
init.cgi - 初期パラメータを設定するためのファイル

(予約ページに関するもの)
res_hiduke.cgi - 予約ページの日付選択画面を表示するCGIスクリプトファイル
res_jikan.cgi - 予約ページの時間選択画面を表示するCGIスクリプトファイル
res_staff.cgi - 予約ページのスタッフ選択画面を表示するCGIスクリプトファイル
res_input.cgi - 予約ページの入力画面を表示するCGIスクリプトファイル
res_conf.cgi - 予約データを確認表示するためのCGIスクリプトファイル
res_exec.cgi - 予約データをファイルに書き込んで確認メールを送付するCGIスクリプトファイル
tbl_view.cgi - 予約テーブルを表示するCGIスクリプトファイル
res_check.js - 予約ページの入力チェックを行うJavaScript外部ファイル
jcode.pl - 漢字コード変換ライブラリ(メール送信時に使用)
mimew.pl - MIMEエンコードライブラリ(メール送信時に使用)
※jcode.pl は、歌代和正さんが開発、配布されている漢字コード変換ライブラリ
※mimew.plは、生田昇さんが開発、配布されているMIMEエンコードライブラリ


(管理ページに関するもの)
staff_view.cgi - 登録されているスタッフ名を表示するCGIスクリプトファイル
staff_add.cgi - スタッフ名を登録するためのCGIスクリプトファイル
staff_search.cgi - 目的のスタッフデータを検索して表示するCGIスクリプトファイル
staff_ment.cgi - スタッフデータの修正と削除を行うためのCGIスクリプトファイル
holi_view.cgi - 定休日以外の休業日の設定画面を表示するCGIスクリプトファイル
holi_ment.cgi - 定休日以外の休業日を設定するCGIスクリプトファイル
yoyaku_view.cgi - 予約データを表示するためのCGIスクリプトファイル
yoyaku_del.cgi - 予約データを個別に指定して削除するCGIスクリプトファイル
yoyaku_sort.cgi - 予約データを予約日時順に表示するためのCGIスクリプトファイル
custom_view.cgi - 顧客データを表示するためのCGIスクリプトファイル
custom_del.cgi - 顧客データを個別に指定して削除するCGIスクリプトファイル
delete.htm - 本日を過ぎた予約データと顧客データの削除用ボタンを表示するHTMLファイル
past_del.cgi - 本日を過ぎた予約データと顧客データを削除するためのCGIスクリプトファイル
ment_check.js - 管理ページの入力チェックを行うJavaScript外部ファイル

(ログファイル)
rec_num.cgi - 受付番号を格納するためのログファイル

(CSSファイル)
reserve.css - スタイルを指定するためのファイル

(ファイルロック処理で使用)
lockfile - ロック状態を判断するためのファイル

■ 注意事項
1. 管理ページはアクセス制御(IDとパスワードがなければ入室できない)は使用していません。必要であれば、KENT-WEBWeb Protectなどを設置した上で、「美容室まゆ予約システム」を設置してください。

2. 顧客が予約を確定したとき、顧客には確認メールが、お店の担当者にも通知メールが送付されるので、パソコンのメールソフトを常に立ち上げた状態にしておいてください。顧客の予約にすばやく対応するために、メールチェックの間隔はできるだけ短く設定しておくのが望ましいです。またメールが届いたら音が鳴る設定にもしておいてください。パソコンのボリュームも上げておくといいでしょう。

3. このシステムは、sendmailコマンドを利用してメールの送信をしているので、メールソフトやウェブメールによっては、迷惑メールと判定される場合がありますので、ご注意ください。顧客にはそのことを目立つように表示しておくほうがいいかもしれません。お店の側でも、通知メールが迷惑メールに振り分けられるようでしたら、通知メールをホワイトリストに入れておいてください。

4. 運用を始めてから、スタッフデータを変更したり削除したりしないでください。予約データを正しく参照できなくなります。スタッフデータを追加する場合は問題ありません。やむを得ず、スタッフデータを変更または削除したい場合は、システムをリセットすることをお勧めします。予約データファイル(reserve.cgi)と顧客データファイル(custom.cgi)をダウンロードして保存後、予約データファイルと顧客データファイルを削除しておいてください(ファイルを削除しても、新たに予約があると、ファイルは自動で作成されます)。受付番号のリセットについては、6.を参照してください。

5. スタッフデータ、予約データ、顧客データは、カンマで区切られたテキストファイルになっています。これらのデータをExcelやAccessなどに取り込む場合は、ファイルをダウンロードしたあと、ファイルの拡張子(ドットより右の"cgi")を"txt"に変えて、テキストデータとして取り込んでください。

6. 受付番号をリセットまたは任意の番号にしたいときは、受付番号格納ファイル(rec_num.cgi)の数字を書き換えてアップロードしてください。例をあげると、0に書き換えてアップロードすると、その後最初に予約があれば、その受付番号は1になります。10に書き換えてアップロードすると、11からスタートになります。また受付番号を減らすことは、予約データをリセット(予約データと顧客データをすべて削除)するとき以外は、避けてください。同じ受付番号の予約データと顧客データが複数存在することになり、システムが誤動作を起こします。

7. 電話予約があったとき、その予約を、このシステムに反映させるには、顧客と同じ予約ページから、お店のメールアドレスを入力して、予約の操作を行ってください。すると、顧客に送られる確認メールとお店の担当者に送られる通知メールは届かなくできます。また備考に入力しなくても、自動的に、顧客データの備考に「Tel予約」と入ります。もし、備考欄に何か入力したときは、「Tel予約」の文字列のあとに半角スペースをはさんで、入力した文字列が書き込まれます。

8. 予約入力画面の、名前、会員番号、メールアドレスの各フィールドは、Cookieを使用しているので、一度予約すると、次回からは再表示され、入力の手間が省けます。

9. 受付番号が同じ予約データと顧客データのうち、顧客データを先に削除すると、予約データの申込者の欄にErrorと表示されるのは、顧客データテーブルから申込者のデータを取り込んで表示しているためです。

10. 休業日の管理ページで設定できる日は、予約受付期間の最後の日の翌日からになります。これは予約が入っているのに、誤って休業日に設定しないためです。予約受付期間に入ると、休業日に設定できないのでご注意ください。どうしても、予約受付期間に入った日を休業日にしたい場合は、休業日設定ファイル(holiday.cgi)に、休業日にしたい日を直接書き込んで、所定の場所にアップロード(バイナリ転送)してください。たとえば、2009年2月27日を休業日にしたい場合は、「20090227」の文字列と「Enter」キー(\r\n、すなわち、16進の0Dと0A)を一番最後に追加してください。

■ 設置方法
1. init.cgi(初期パラメータ設定ファイル)を、メモ帳などのテキストエディタで開き、必要な場合は、★印の項目を説明に従って変更してください。また、☆印の項目は、sendmailのオプションなので、使用するサーバでこのオプションが指定できるか確認してください(res_exec.cgiの中の★印をつけた部分も確認してください)。

2. 各CGIの1行目のパス名も、必要な場合は変更してください。

3. 19個の各CGIのHTMLを書き出す部分の、<body>タグのbackground属性値(背景画像を指定する部分)と、<a>タグの間に挟まれた<img>タグ(BACKボタンまたはTOPボタン)の部分は、設置する環境や好みに応じて変更してください。そのまま設置すると、背景画像はなく(白の背景になります)、BACKボタンもTOPボタンも表示されません(×印が表示されます)。

4. まず、lockfile以外の27個のファイルをサーバーに転送してください。
ファイル パーミッション
init.cgi 変更不要
res_hiduke.cgi 755
res_jikan.cgi 755
res_staff.cgi 755
res_input.cgi 755
res_conf.cgi 755
res_exec.cgi 755
tbl_view.cgi 755
res_check.js 変更不要
jcode.pl 変更不要
mimew.pl 変更不要
staff_view.cgi 755
staff_add.cgi 755
staff_search.cgi 755
ファイル パーミッション
staff_ment.cgi 755
holi_view.cgi 755
holi_ment.cgi 755
yoyaku_view.cgi 755
yoyaku_del.cgi 755
yoyaku_sort.cgi 755
custom_view.cgi 755
custom_del.cgi 755
delete.htm 変更不要
past_del.cgi 755
ment_check.js 変更不要
rec_num.cgi 変更不要
reserve.css 変更不要

5. 次に、4.でファイル転送したディレクトリの下に、lockdir という名前のディレクトリを作り、そこに lockfile という名前のファイルを転送してください。
ディレクトリ パーミッション
lockdir 変更不要
ファイル パーミッション
lockfile 変更不要

<ディレクトリ構成例>

public_html
  |
  +--xxxxx.htm [644] 予約用トップページ(配布していません)
  +--xxxxx.htm [644] 管理用トップページ(配布していません)
  |
  +--mydb3
  |   |
  |   +--staff.cgi [644] スタッフデータファイル(自動作成)
  |   +--holiday.cgi [644] 休業日設定ファイル(自動作成)
  |   +--reserve.cgi [644] 予約データファイル(自動作成)
  |   +--custom.cgi [644] 顧客データファイル(自動作成)
  |
  +--cgi--reserve
          |
          +--init.cgi [644] 初期パラメータ設定ファイル
          |
          +--res_hiduke.cgi [755] CGIスクリプトファイル
          +--res_jikan.cgi [755] CGIスクリプトファイル
          +--res_staff.cgi [755] CGIスクリプトファイル
          +--res_input.cgi [755] CGIスクリプトファイル
          +--res_conf.cgi [755] CGIスクリプトファイル
          +--res_exec.cgi [755] CGIスクリプトファイル
          +--tbl_view.cgi [755] CGIスクリプトファイル
          +--res_check.js [644] JavaScript外部ファイル
          +--jcode.pl [644] 漢字コード変換ライブラリ
          +--mimew.pl [644] MIMEエンコードライブラリ
          |
          +--staff_view.cgi [755] CGIスクリプトファイル
          +--staff_add.cgi [755] CGIスクリプトファイル
          +--staff_search.cgi [755] CGIスクリプトファイル
          +--staff_ment.cgi [755] CGIスクリプトファイル
          +--holi_view.cgi [755] CGIスクリプトファイル
          +--holi_ment.cgi [755] CGIスクリプトファイル
          +--yoyaku_view.cgi [755] CGIスクリプトファイル
          +--yoyaku_del.cgi [755] CGIスクリプトファイル
          +--yoyaku_sort.cgi [755] CGIスクリプトファイル
          +--custom_view.cgi [755] CGIスクリプトファイル
          +--custom_del.cgi [755] CGIスクリプトファイル
          +--delete.htm [644] HTMLファイル
          +--past_del.cgi [755] CGIスクリプトファイル
          +--ment_check.js [644] JavaScript外部ファイル
          │
          +--rec_num.cgi [644] ログファイル
          │
          +--reserve.css [644] CSSファイル
          │
          +--lockdir [755] ファイルロック用ディレクトリ
              |
              +--lockfile [644] ロック状態を判断するためのファイル

6. 予約用トップページと管理用トップページを、それぞれ別々のページに設置してください。

予約用トップページから呼び出すファイル
機能 呼び出すファイル 上の構成例でのファイルパス
予約ページ res_hiduke.cgi cgi/reserve/res_hiduke.cgi
予約状況確認ページ tbl_view.cgi cgi/reserve/tbl_view.cgi

管理用トップページから呼び出すファイル
機能 呼び出すファイル 上の構成例でのファイルパス
スタッフデータの管理 staff_view.cgi cgi/reserve/staff_view.cgi
休業日の管理 holi_view.cgi cgi/reserve/holi_view.cgi
予約データと顧客データの削除 delete.htm cgi/reserve/delete.htm
予約データの管理 yoyaku_view.cgi cgi/reserve/yoyaku_view.cgi
顧客データの管理 custom_view.cgi cgi/reserve/custom_view.cgi

■ 更新履歴
・Ver1.7 - HTMLを書き出す部分にMETAタグによるビューポート設定を追加(2017/09/25)
・Ver1.6 - 書き出すHTMLの1行目に文書型宣言を追加(2016/05/16)
・Ver1.5 - HTMLを書き出す部分にMETAタグによる文字コード指定(Shift_JIS)を追加(2011/05/16)
・Ver1.4 - テーブルと水平線とリンクをおしゃれな感じに変更する(2011/04/29)
・Ver1.3 - URL上での不正なパラメータ指定を防止するための処理を追加(2010/04/13)
・Ver1.2 - 予約入力画面でのJavaScript無効または携帯ブラウザ用の入力チェック処理を追加(2010/04/09)
・Ver1.1 - 特別休業日を追加設定したとき予約受付期間に入った特別休業日が削除される不具合を修正(2009/03/23)
・Ver1.0 - 新規作成(2009/02/05)


BACK