掲載誌情報
掲載誌 Web Creators 2002/03
タイトル ColdFusion入門/ショッピングサイト構築 第4回
第1回 第2回 第3回 第4回

4. ご注文最終内容確認画面から注文完了画面へ
    スクリーン
     
  1) 購入管理テーブルに登録する
    購入管理テーブルの「BuyYMD」の購入した日時は、ColdFusionのnow()関数により取得した現在時刻を登録する。お客様が入力した内容と、ショッピングカートに入っている商品の合計金額を購入商品管理テーブルに登録するSQLをcfqueryタグとともに記述する。
end.cfm 38行目〜70行目
<!--- 現在の日時を取得する。--->
<cfset todaydate = now()>
<cfoutput>
 <cfquery name="Insert_T_BuyManagement" datasource="shopping">
  INSERT INTO T_BuyManagement
   (
    BuyYMD,
    OrderSeiName,
    OrderMeiName,
    OrderSeiFuri,
    OrderMeiFuri,
    OrderZipCode,
    OrderAddress,
    OrderPhone,
    OrderMailAdd,
    PayMode,
    OrderShokei,
    OrderShohizei,
    OrderGokei
   )
   VALUES(
    '#DateFormat(todayDate)#',
    '#FORM.lastname#',
    '#FORM.firstname#',
    '#FORM.lastnamekana#',
    '#FORM.firstnamekana#',
    '#FORM.zipcode#',
    '#FORM.address#',
    '#FORM.tel#',
    '#FORM.email#',
    #FORM.kessai#,
    #Total_M_CartQry.price#,
    #Total_M_CartQry.tax#,
    #Total_M_CartQry.total#
   )
 </cfquery>
</cfoutput>
  2) 購入商品管理テーブルに登録する
    まずショッピングカートの内容を確認しよう。
end.cfm 38行目〜70行目
<!--- 商品情報を取得する処理--->
<cfquery name="M_CartQry" datasource="shopping">
 SELECT M_Item.ItemID, T_Cart.ItemPeaces, M_Item.Price
 FROM M_Item INNER JOIN T_Cart ON M_Item.ItemID = T_Cart.ItemID
 WHERE T_Cart.CartID = '#Cookie.CreateUUID#'
</cfquery>
上記のクエリにより取得した商品データを購入管理テーブルに登録していく。まず購入管理テーブルの注文管理番号を取得する。その注文管理番号をクエリ「M_CartQry」により取得した商品情報とともに購入商品管理テーブルにデータを格納する。
end.cfm 75行目〜77行目
<cfquery name="Sel_OrderID" datasource="shopping">
 SELECT MAX(OrderID) as M_OrderID FROM T_BuyManagement
</cfquery>
end.cfm 82行目〜89行目
<cfquery name="Insert_T_BuyItems" datasource="shopping">
 INSERT INTO T_BuyItems VALUES(
  #Sel_OrderID.M_OrderID#,
  #M_CartQry.ItemID#,
  #M_CartQry.ItemPeaces#,
  #M_CartQry.Price#
 )
</cfquery>
  3) ショッピングカートを空にする
    注文が完了した商品をショッピングカート管理テーブルより削除する。
end.cfm 93行目〜97行目
<cfquery name="Delete_T_Cart" datasource="shopping">
 DELETE FROM T_Cart
 WHERE ItemID = #M_CartQry.ItemID#
 AND CartID = '#Cookie.CreateUUID#'
</cfquery>
  4) 再度同じユーザーがショッピングを行うために
    ユーザーIDをセットしていたクッキーを削除するために、cfcookieタグのexpiresにNOWを記述する。こうすることによって次にアクセスしたときに新たなショッピングカートを準備することが出来る。
end.cfm 102行目〜104行目
<cfcookie name="CreateUUID" value="#CreateUUID()#" expires="NOW">

ショッピングサイトのコーディングについての説明は以上である。
5. おわりに
  全4回に渡ってColdFusionでのECサイト構築の入門を行ってきたが、いかがだっただろうか。ECサイトが題材であったため、多少難しいコーディングも出てきたが、ColdFusionとデータベースを使用したWEBサイトの構築に必要な基本的な事項についての知識の習得はできたかと思われる。
本格的なECサイトを構築するためにはまだまだいろいろな処理、画面を作成する必要があるので、本入門のサンプルが基礎となれば幸いである。

BACK  
PAGETOP
CLOSE