PHP+MySQL互動式網頁程式設計班 範例實作-簡易線上購物車 講師:林業峻 CSIE, NTU 6 / 20, 2010
課程大綱 線上購物車 購物車物件實作 物件的POST與GET傳輸 作業
線上購物車 購物車程式讓使用者能夠在有購物功能的網站中 ,方便選取自己所要購買商品 這類網站中主要功能有 列出商品資訊 觀看商品內容與加入購物車 列出購物車內容 結帳, 將訂單建檔 作業! 設計挑戰:如何讓購物結果在不同網頁中傳遞 使用GET與POST 使用Session (第九章)
線上購物車網頁架構 觀看商品內容與加入購物車 列出商品資訊 (首頁) 列出購物車內容 新增 GET POST shopping.php shopping_item.php shopping_buy.php GET
課程大綱 線上購物車 購物車物件實作 物件的POST與GET傳輸 作業
練習: 購物車物件實作 為了方便購物車能在網頁中傳遞, 我們將購物車的 相關功能與資訊宣告成類別用來建立購物車物件 宣告一個class Cart據有下列功能 (class_cart.php) 變數 產品名稱 產品訂購個數 產品單價 產品照片 總價 函式 初始化商品內容 (建構式) 加入商品 計算總價 列出購物結果
使用include函式 一購物車類別必須在所有網頁中使用, 我們將購物 車類別寫在class_cart.php中, 再每個頁面透過 PHP的include函式, 將它匯入 include函式語法 include(“檔名”);
課程大綱 線上購物車 購物車物件實作 物件的POST與GET傳輸 作業
物件的POST與GET傳輸 物件必須經序列化後才能藉由 get 或 post 傳遞。 序列處理,將變數或物件中的資料轉換成位元串 流(byte-stream),以便經由 URL 在網頁間傳遞資 料。 傳遞後, 下一個頁面接收到序列化後的物件, 必須 透過反序列化處理才能還原物件 序列處理函式語法 $序列後的資料= serialize ($序列前的資料); 反序列處理函式語法 $序列前的資料= unserialize ($序列後的資料);
物件的POST與GET傳輸 將序列化後的資料傳輸到另一頁面,資料會被插 入一些反斜線做跳脫字處理( \ ), 因此在使用前需 要用stripslashes 函式將他還原 。 stripslashes函式語法 $處理後變數= stripslashes ($處理前變數);
使用urlencode, urldecode函式
課程大綱 線上購物車 購物車物件實作 物件的POST與GET傳輸 作業
作業-線上購物車 自訂三項商品名稱與價格供使用者選取 參考今日的練習並增加送出訂單並建檔儲存功能 訂單設計如下: 輸入收件人資料 姓名 電話 地址 E-mail 輸入送貨資訊 送貨時間 交易方式 (列出運費) 其他意見
作業-線上購物車 訂單內容必須檢查: 確認無誤後, 將訂單結果寫入檔案: 輸入收件人資料 判斷所有資料是否填寫 輸入送貨資訊 送貨時間:非面交需要選擇至少一個 交易方式:判斷是否有選擇 確認無誤後, 將訂單結果寫入檔案: 將清單存入 cart_訂單編號.txt 格式不拘, 功能請參考講師網頁空間中 hw2/shopping.php
繳交 使用FTP上傳 請使用FileZilla上傳作業至指定FTP主機 繳交期限:2010. 6/27(日) 主機: 使用者名稱: 密碼: 連接埠: 將程式存到自己學號之hw2資料夾 首頁檔名: shopping.php 請使用FileZilla上傳作業至指定FTP主機 繳交期限:2010. 6/27(日) 公佈解答後,不再收遲交作業