Home > 買物カゴシステム > CART FORM
|
- 簡易型のショッピングカートで、買物を「入力→確認→送信」の3画面で完結します。
- サンプルは以下にあります。
- CART FORMの機能的な特長は以下のとおりです。
- 商品画面と入力画面を同一ページにしているため、購入操作まで3画面で完結します。
- 取り扱う商品数が少ないネットショップでの利用に適しています。
- すべての注文画面(メール本文含む)がテンプレート式のため、自由にデザインやレイアウト変更を行うことができます。
- 入力フォームでは、自由に入力項目の追加が可能です。
- 消費税は、外税・内税の両方式はもちろん、「軽減税率」にも対応しています。
- 買物処理には、クッキーは使用しません。
- 郵便番号を入力すると、ワンタッチで都道府県以下の住所をプレ入力します(株式会社人気組提供の「AjaxZip3」を利用)。
- 都道府県別の送料計算、一定以上の送料サービス計算、支払い別の手数料計算(代引き等)などが可能です。
- クレジット/銀行/コンビニ決済連携により、ワンストップで販売から決済までを行なうことができます (クレジット/銀行/コンビニ決済連携を行なうためには、別途ゼウス社との個別契約が必要)。
- このプログラムを利用する上での利用規定です。必ず目を通しておいて下さい。プログラムをダウンロードする場合、「利用規定」に同意したものとみなします。
ゼウス社との提携について
- CGIショッピングカートの利用について、これまでネットショップ様からご要望の多かった「クレジット/銀行/コンビニ決済」を可能とするために、クレジットサービス会社の「ゼウス社」と提携しました。
- 設定ファイル init.cgi で所定の設定を行うことにより、ショッピングカートでの商品販売時に支払方法で「クレジット決済」「銀行決済」又は「コンビニ決済」を選択すると自動的に決済画面を表示させ、クレジット/銀行/コンビニ決済までを完結します。
- クレジット/銀行/コンビニ決済サービスを利用するには、ゼウスとの契約が別途必要です。詳細は以下のページをご覧ください。
- 以下の書庫ファイルをダウンロードします。文字コードはUTF-8になっていますので、秀丸、Terapad等のUTF-8に対応したエディタで編集してください。
- ダウンロード後、解凍 します。解凍すると以下のファイルが展開されます。
init.cgi ----------- 設定ファイル cartform.cgi ------- カートプログラム本体 admin.cgi ---------- 管理用プログラム本体 check.cgi ---------- 動作チェック用プログラム cartform.html ------ 買物カゴ入力画面 data/log.cgi ------- ログファイル data/data.dat ------ 商品データファイル data/num.dat ------- 通番ファイル data/log ----------- ログディレクトリ lib/base64.pl ------ Base64変換モジュール [配布者: A. P. Barrett] lib/jacode.pl------- 文字コード変換モジュール [入手元] tmpl/*.html -------- 画面テンプレート tmpl/*.txt --------- メール本文テンプレート style.css ---------- スタイルシートファイル
- 全体のディレクトリ構成とファイル位置の設置例は以下のとおりです(かっこ内はパーミッションの設定値)。
ディレクトリ構成例
public_html / (ホームディレクトリ) | +-- cartform / cartform.cgi [705] ... 買物カートプログラム | admin.cgi [705] ... 管理用プログラム | check.cgi [705] ... 動作チェックプログラム | init.cgi [604] ... 設定ファイル | cartform.html ......... 買物カゴページ | style.css | +-- lib / base64.pl | jacode.pl | | +-- data / log.cgi [606] | | data.dat [606] | | num.dat [606] | | | +-- log [777] / | +-- tmpl / *.html *.txt
- init.cgi を エディタ で開いて以下の箇所を修正します。
- $cf{password} = '0123';
- (管理モードのためのパスワードです。英数字で指定します)
- $cf{mailto} = 'xxx@xxx.xx';
- (注文メールの送信先アドレスを指定します)
- $cf{sendmail} = '/usr/lib/sendmail';
- (サーバで定められたsendmailのパスを指定します。不明な場合は、必ずプロバイダへ確認します)
- $cf{sendm_f} = 0;
- (sendmailの仕様として、-fオプションが必要な場合「1」とします。不明な場合は、必ずプロバイダへ確認します)
- $cf{pref} = [
'北海道,1080',
'青森県,1080',
: - (都道府県名の設定です。県別に送料を指定する場合には、県名の後のコンマに続けて送料を記入します。もし、送料が不要な場合には「0」とします)
- $cf{deli_nocost} = 500;
- (一定金額以上の場合に送料を無料にする場合にその金額指定します。もし、この機能を使用しない場合には「0」とします)
- $cf{check_key} = 1;
- (送信フォームのname値の正当性をチェックする場合は「1」とします。正当性とは、英数字、アンダーバーハイフン、全角文字(日本語)であるかどうかをチェックします)
- $cf{zeus_serv} = 0;
- (ゼウス社による決済代行サービスを行なう場合に設定します。クレジットのみは「1」を、クレジット及び銀行決済サービスは「2」を、クレジット及びコンビニ決済サービスは「3」を、クレジット・銀行・コンビニ決済サービスは「4」とします。この機能を利用する場合には、別途ゼウス社との契約が必要です。 詳細は「ゼウス社クレジットカード決済代行システムのご案内」を参照)
- $cf{zeus_num} = '11111';
- (ゼウス社との契約完了時に発行されるクレジット用IPコードを記入します。$cf{zeus_serv}の値が「1」又は「2」又は「3」又は「4」の場合に必須)
- $cf{zeus_bip} = '22222';
- (ゼウス社との契約完了時に発行される銀行用IPコードを記入します。$cf{zeus_serv}の値が「2」又は「4」の場合に必須)
- $cf{zeus_cip} = '33333';
- (ゼウス社との契約完了時に発行されるコンビニ用IPコードを記入します。$cf{zeus_serv}の値が「3」又は「4」の場合に必須)
- cartform.cgi, admin.cgi, check.cgi を エディタ で開いて以下の箇所を修正します。
- #!/usr/local/bin/perl
- (プロバイダで定められたPerlへのパスを指定します)
- 以上、修正が完了したら各ファイルを所定のディレクトリへFTP転送し、以下のとおり アクセス権 (パーミッション) を設定します。
ファイル名 パーミッション 転送モード 一般サーバ suEXECサーバ
CGIWrapサーバcartform.cgi
admin.cgi
check.cgi755 or 705 701 or 700 アスキー data/log.cgi
data/data.dat
data/num.dat666 or 606 600 アスキー init.cgi 644 or 604 600 アスキー lib/*.pm
lib/jacode.pl
style.css
tmpl/*.html
cartform.html- - アスキー data/logディレクトリ 777 or 707 701 or 700 - Tips:ファイル転送の仕方は以下のページを参考にしてください。
FTP : Windows編 FTP : Macintosh編 - 以上、作業が完了したら「チェックモード」で動作チェックを行ないましょう。 「check.cgi」に直接アクセスすることで、簡易的なチェックを行うことができます。 なお、動作チェック後はchekc.cgiはファイル削除しておきます。
- 買物フォームについて
・ 「cartform.html」を参考にしてください。
【必須入力の指定】
<input type="hidden" name="need" value="name email pref addr tel">
(name値「need」にて、value値の中に入力必須にしたいname値をスペースで区切って指定します)【入力マッチングの指定】(メールアドレス等の2度入力チェック)
<input type="hidden" name="match" value="email email2">
(name値「match」にて、value値の中にマッチングチェックしたいname値をスペースで区切って指定します)【商品の書き方】
<input type="checkbox" name="order" value="0001"> 特製ダージリン・ティー ¥1,500
(name値「order」にて、value値の中に商品コードを指定します。商品は複数選択できるようにすることから、上記のようなチェックボックス式が適しています)【支払形態の書き方 (1)】
<input type="radio" name="pay" value="銀行振込"> 銀行振込
(name値「pay」にて、value値の中に支払形態を直接指定します。なお、「代引」等で支払形態による手数料を付加する場合には、設定(init.cgi)にて、$cf{pay_cost}の中で指定します)【支払形態の書き方 (2)】
<input type="radio" name="pay" value="zeus-c"> クレジット [連携決済]
(支払形態にて、ゼウス社によるクレジット/銀行/コンビニ決済を行う場合には、value値の中にクレジット決済は「zeus-c」を、銀行決済は「zues-b」を、コンビニ決済は「zues-v」を指定します。なお、この場合別途ゼウス社との契約が必要です)【入力項目を任意に追加するとき】
<input type="text" name="会社名" size="30">
(入力項目を自由に追加することができます。name値に追加する項目名を指定します。上記例のように日本語で指定しても構いません) - テンプレートファイルについて
・ 注文画面およびメール本文はテンプレート式となっていますので、レイアウトや画面を自由にカスタマイズすることができます。
・ テンプレートファイルは、すべて tmplディレクトリ に置かれています。ファイル名 用途 備考 conf.html 確認画面 send.html 送信後画面 send-credit.html 送信後、クレジット決済連携画面 ゼウス社契約のとき send-bank.html 送信後、銀行決済連携画面 ゼウス社契約のとき send-conv.html 送信後、コンビニ決済連携画面 ゼウス社契約のとき err1.html エラー画面 err2.html 入力エラー画面 mail.txt 注文メール本文 管理者宛のメール reply.txt 注文メール本文 注文者宛のメール 【注意事項】
- 各HTMLファイル中のコメント文 (<!-- loop --> など) および、「!」で囲まれた文字(!back! など)は削除しないように注意してください。それ以外は原則として自由に変更して構いません。
- name値は日本語も使用できますが、次の制限事項があります。
使用可能な文字: 英数字、アンダーバー、ハイフン、全角文字(日本語)