ショッピングバスケットシステム・プロ
バージョン 3.xx 取扱説明書
１ 特徴
9 クッキーと一時ファイルを利用して、選択(バスケットに入れられる)できる商品の数は論理的に制限はありません。(簡易ショッピングバスケットとの比較)
9 商品管理ファイルは自由に分類などで分けることができ、それぞれのファイルを使って販売フォームを自動生成することができます。文字列検索(商品コード、商品名、備考欄が検索の対象となる)と価格帯の検索が可能です。(search.cgi使用)
9 任意の形式で商品紹介画面を作成した場合、その画面でバスケットに入れることができます。
9 商品管理ファイルは、そのファイル名のつけ方によって、同じバスケットに入れるもの、入れないで別のバスケット(別会計)にするものを分けることができます。要するに、１つのシステムで複数のグループ(群)の商品を構成できます。
9 それぞれの商品管理ファイル内に、そのグループの名称や、search.cgi を使って一覧する場合に、その画面に挿入するメッセージを設定することができます。
9 商品管理ファイルをサーバ上で書きかえる簡易エディタが添付されています。(ただし、ファイルの編集はできるだけローカル上のパソコンで行うことが望まれます。)
9 在庫数が限られている場合は、在庫数を商品管理ファイルに設定しておくことで、お買い上げ時にその数を在庫数から引く機能があります。
9 個々の商品毎に、お買い上げ数量の入力方法を設定することができます。数字を入力してもらう方法、あらかじめ用意した数字の中から選択してもらう方法、チェックボックスを利用して１つ選択してもらう方法があります。(search.cgi利用時)
9 任意の形式で商品紹介画面を作成した場合は、決められた形式の範囲内で、お買い上げ数量の入力の自作することができます。
9 ご注文された後に自動的に、注文者へ注文事実の確認をする電子メールを送信する機能があります。受信した方がその内容に覚えがない場合は、勝手にその方のＥメールが使われた可能性があり、不要なトラブルを防止できます。
9 ご注文フォームは手軽に構成できるように、別ファイル(juchu.txt)で記述することができます。
9 訪問販売法による告知内容を申し込み前に大きく表示することで、お客様に安心感を与えることができるとともに、ご注文フォーム同様、別ファイルで記述することができます。
9 ご注文時には受付番号を自動的に発行するので、問い合わせなどで便利に利用できます。

※ 消費税の計算方法について

このシステムは、商品別に税率の設定を可能とした機能を持っています。商品毎に消費税を計算して小計を表示します。それで問題になるのが、小数点以下の値の取り扱いです。旧バージョン(〜v3.11)では、商品毎に切り捨てで計算した消費税を積算させていたために、②+④=⑦になりましたが、⑤+⑥=⑦にはなりませんでした。切り捨てされた額が微妙に影響し、数円の差が生まれてしまいました。そこで、画面上には商品毎に切り捨て額を表示しますが、計算上は切り捨てしない額(環境によって小数点以下何桁まで有効となるか異なり、誤差が出る場合はあります)を裏で積算し、最終段階で初めて切り捨てした消費税合計⑥と合計⑦を表示することにしました。従って、⑤+⑥=⑦ができるだけ合致するようになります。①や③、および②や④は、参考値となりますので、ご了承ください。当システムでは切り捨て切り捨てを採用しています。切り上げ、四捨五入など、様々な形態が参考値
切り捨てありますが、それが売り手と買い手が納得していれば、税務上はいずれを選択してもいいことになっています。税務上必要な消費税額は、実際に預かった消費税額であり、その算出方法は前述したとおり、柔軟に対応できます。いずれの場合も、数字の転記の際は、十分再確認の上、問題の無いように行ってください。

２ 設置環境と構成
このＣＧＩシステムは次の環境が少なくとも必要です。必ずしもこの環境でなければ動作しないというものではなく、この環境で設計されているということです。この環境以外のサーバ、またはこの環境であっても他に特別な制限等があるサーバへの設置には、ご自身にてプログラムの修正が必要な場合があります。
•UNIX 上の、バージョン４以上の perl•

sendmail (CGI からの実行が可能なもの)

設置構成については、「ＣＧＩプログラムが任意の場所で実行できる」という条件で説明されています。その他の場合(CGI と文書・画像は別のディレクトリへ設置する必要がある等)は、その指示に従って構成し、その構成に従って初期設定を修正してください。
/shop//data/ <755>
hanbai.txt <644> …特定商取引に関する法律による告知内容を記述する
juchu.txt <644> … 注文フォームを記述する
商品管理ファイル名.csv <644>または<666>(在庫管理の時)/tmp/ <777> … 一時ファイルが自動生成・自動削除される作業場所
cargo.cgi <755> … メインシステム実行
order.cgi <755> … オーダーフォームとその実行
cookie.cgi <755> …クッキー処理検査実行
crypt.cgi <755> …暗号処理実行
edit.cgi <755> … 商品管理ファイルの簡易編集実行(設定あり)
jcode.pl <644> … 日本語コード変換ライブラリ
search.cgi <755> … 商品管理ファイルを商品一覧する実行
setup.pl <644> … 初期設定ファイル< >内はパーミッション値です。この値は相当値ですので、設置するサーバの環境に合わせて最適な値を設定してください。詳しくは当サイトのパーミッションに関するページをご参照ください。
在庫管理機能を利用(そのファイルに在庫数を設定した商品が１つでもある場合)する場合は、注文があるとその部分(数字)が書きかえられることになりますので、パーミッション値は<666>相当値に設定してください。
(後述のバックアップの重要性についてを熟読ください。)
この構成の他に、メニューページ(index.html)や、個々の商品について詳細に説明するページ(商品説明.html)が必要であれば作成してください。また、商品を複数のファイルで整理・管理したい場合や、別のカゴ(ショッピングバスケット)に入れたい商品群がある場合などは、その分の商品管理ファイルを用意してください。
ショッピングバスケット部分(cargo.cgi)と買い物が決まって申し込みを行うオーダーフォーム部分(order.cgi)を分けました。これにより、住所氏名などの記載を行うオーダーフォーム部分を SSL 対応にすることができます。呼び出す際に https を指定します。初期設定で order.cgi のアクセス方法を設定することで実現します。
ただし、cargo.cgi と order.cgi は同じサーバ内にあり、かつ、データフォルダを共有できることが必須です。
また、SSL はそれにサーバが対応している必要があります。
※ 特定商取引に関する法律とは・・・
申し込み画面について「パソコンの誤操作等による消費者トラブルが増加していることに対応するため、申し込みに関し、わかりやすい画面表示を行う」ことが義務付けられました。当システムはその機能(最終確認画面)が追加(v3.4*~)されています。その他、プログラムの動作以外の詳細については、http://www.jadma.org/ をご参照ください。
※ 商品管理ファイル名の付け方

Usage: [バスケット識別子バスケット識別子.
名称.csv
バスケット識別子.]名称
名称.csv
これよりも旧バージョンのデータはそのままご利用いただけます。
原則的 に、商品設定ファイル 別にバスケット (ショッピン グバスケット )が異なり ます。たとえば 、「FOO.csv」と「BAR.csv」という商品設定ファイルがあるとします。この場合、FOO の商品と BAR の商品は、同じかごに入れることはできませんので、会計は別となります。同じかごに入れたいけれども、整理上、ファイルを分けたいという場合もあると思います。その場合は、商品設定ファイル名の左から最初のピリオドまでが同じ名前(バスケット識別子)であれば、同じかごで扱うようになっています。
たとえば、「01.csv」と「02.csv」と「03.csv」という商品設定ファイルがあるとします。「01.csv」と「02.csv」を同じかご(会計を同じにする)にし、「03.csv」は別のかごに入れたいとすれば、「01.csv」→「A.01.csv」、「02.csv」→「A.02.csv」、「03.csv」→「B.03.csv」というようにファイルを付けます。ダウンロードしたシステムはこれらサンプルデータ(サンプル商品設定ファイルや商品解説ページや画像)が含まれていますので、設置や使い方に自信がない場合は、まずそのまんま設置して動作を学習してください。なお、同じカゴで扱う
商品コードは、ファイルが別でも重複しないように注意してください。

３ 商品設定ファイルの作り方
１〜３行目に文章、４行目が空行、５行目以降が商品データとなります。１行目には商品群名を設定し、search.cgi では<h1>商品群名</h1>として表示されます。２行目はその下位置に表示されるメッセージで、ＨＴＭＬ形式で記述できます。３行目は画面下部に表示されるメッセージで、ＨＴＭＬ形式で記述できます。
４行目には必ず空行を入れてください。
５行目以降は商品データです。１行１件の商品を設定します。項目は８つあり、それぞれ半角カンマで区切られます。エクセルでのファイル編集に対応しています。手動でファイルをいじる場合は、次の点にご注意く
ださい。サンプルデータ(A.01.csv)が添付されていますので、メモ帳などのテキストエディタで見てみてください。商品名項目に、半角カンマ(,)やダブルクォーテーション(”)を入れた場合の例がご覧いただけます。形式に合わないデータは一覧できませんのでご注意いただくとともに、画面上で商品データが表示されていることを確認してください。
・ 項目内のデータとしての”は””と表すこと。
・ 項目内に,や”を入れる場合は項目自体を””で囲むこと。

Usage: 商品コード,商品コード,商品名,商品名,単価,単価,消費税率,消費税率,備考,備考,ＵＲＬ,ＵＲＬ,在庫数,在庫数,入力形式[商品コード]半角の英字(_を含む)、数字、ハイフン(-)で構成 (大文字小文字は区別される)唯一の値を設定する.

[商品名]
任意の文字列(コロン:の位置に表示改行が入る)[単価]
半角の数字(カンマや単位記号等は入れない) … 入れたとしても処理可能.

[消費税]
半角の数字(単位：％) 非課税:-1 不課税:-2 税込:-30(%)と入力すると何も処理(表示もしない)しません.

[備考]
任意の文字列(商品の説明など)(コロン:の位置に表示改行が入る)[ＵＲＬ]
URL を設定すれば<a href=リンク></a>される.
相対または絶対(http://から)パスで設定する.

[在庫数]
在庫に限りがある場合に半角数字で設定する.
処理しない場合は空欄とすること.
0 が入力されていると在庫無しと判断されて注文できない.

[入力形式]
0(または空欄):任意入力方式 1:チェックボックス 2:選択方式※

データ部分の例

A01-00001,"""携帯用""カメラ",39800,0,お買得品,A01-00001.html,,0A01-00002,アイロン,9800,5,,A01-00002.html,,1
A01-00003,マグカップ,250,5,お買得品:200 個限定！,A01-00003.html,200,2
A01-00004,口紅,1980,5,,A01-00004.html,500,0
A01-00005,テーブル,98000,5,Ｂ級品:10 台限り,A01-00005.html,10,1
A01-00006,"商品""6""",1600,5,,,,2
A01-00007,"商品,7",1700,5,期間限定:お買得品,,,0
A01-00008,"""商品 8""",1800,-1,,,,1
A01-00009,"""商品<9>""",1900,-2,期間限定:お買得品,,,2A01-00010,限定!:商品 10,2000,-3,,,45,0

４ 初期設定と呼び出し方法
cargo.cgi search.cgi(使用する場合のみ) edit.cgi(使用する場合のみ) 等の .cgi のファイルの冒頭に初期設定があるものは設定してください。全体の初期設定は、setup.pl です。なお、設置に自信がない方は、動作に必要最低限の設定だけをして動作確認をし、その後に文章などの設定を編集してください。そのために、サンプルデータ込みで配布しているわけです。画面は背景が白、一部に色付けしてあります。プログラムを見てアレンジ(改造)ができる方はご自身で編集できるでしょうから、そうでない方のために、あらかじめ最小限にデザインを施してあります。
〇 search.cgi は商品管理ファイルに設定されている商品を、注文できる形式に自動的に一覧するプログラムです。次の方法で呼び出します。添付の index.html をご覧になれば、リンクの仕方が参照できます。

Usage: search.cgi?file=[バスケット識別子
バスケット識別子.
名称バスケット識別子.]名称例<a href="search.cgi?file=A.01">ディスカウントショップ (商品群Ａ-01)</a>〇 cargo.cgi はショッピングバスケットを処理するためのプログラムです。search.cgi を使用すれば意識することはありません。自動的に呼び出しＨＴＭＬが出力されます。search.cgi を実行した一覧画面のＨＴＭＬソースをご覧になれば、自作する場合の参考になるでしょう。(在庫管理機能を使わない場合は、在庫数の変化はありませんので、その画面を.html として保存し、そのまま公開しても構いません。) 自作する場合は、
A01-00001.html 等のＨＴＭＬを参考にしてください。
このように任意のページに、その商品をバスケットに入れるボタンが用意できます。
〇 edit.cgi は、商品設定ファイルをサーバ上で修正するためのプログラムです。サーバ上で書きかえられたデータは、当然ながらローカル上(パソコン上)には残りません。定期的にバックアップを心がけるか、できるだけローカル上で編集したものをサーバに転送するようにしてください。このプログラムで編集する対象となる商品設定ファイルのパーミッションは、<666>相当値に設定してあることが必要です。

Usage: edit.cgi?file=[バスケット識別子
バスケット識別子.
名称バスケット識別子.]名称
例

edit.cgi?file=A.01

５ メンテナンス/tmp/にはバスケットの内容が一時記録されています。これらのファイルは自動的に削除(cargo.cgi が実行された時に１日経過したファイルが削除される)されますが、いつまでも残っているファイルは直接削除してしまって構いません。

６ シェアウエア登録
このシステムはシェアウエアです。試用・動作確認をした後で、ご利用される場合は所定の手続きで登録を行ってください。登録後にはシェアウエア登録コードが発行されますので、それを setup.pl の所定の位置に設定してご利用ください。

シェアウエアとは

http://www.rescue.ne.jp/cgi-rescue/cgi?kitei_Shareware

シェアウエア登録の手引き

http://www.rescue.ne.jp/info/regist.html

７ 利用上の注意
このシステムを御社(貴方)自身でご利用になるのではなく、第三者に貸与(設置されたシステムをユーザに利用させる行為)する行為には、事業者登録が必要です。ショッピングモールなどの運用でご利用になる場合などが含まれます。事業者登録については、当サイトまでお問い合わせください。
© 1999 rescue.ne.jp