第三章 系統分析與設計
3.2 e-sale 拍賣網站管理系統
e-sale 拍賣網的主要系統功能,可分為以下五個功能 : 【線 上會員註冊】、【線上拍賣物品】、【更改會員資料】、【線上物品討論】、
【拍賣系統管理】,本章就這五大功能來討論,如下圖 3.3 所示 :
e-sale主系統
線上競標系統
線上會 員註冊
線上拍 賣物品
更改會 員資料
線上物 品討論
拍賣系 統管理
圖 3.3 會 員 拍 賣 系 統 功 能 圖
3.3.1 線上會員註冊系統
會員輸入資料來申請成為網站的會員,一方面可過濾會員的身 分,另一方面可以讓網站的管理變得較容易,會員只需填寫少量重要 的資料,不像有些網站會要求會員填一大堆資料,當會員忘了填寫某 些欄位時,系統會貼心的以訊息告知哪些欄位是否忘了填寫,而且本 網站有些功能,會員也必需要登入,才可以享受會員的服務。
圖 3.4 線 上 會 員 註 冊 流 程 圖
檔 案 名 稱 : default.asp start
index.asp
procedure 1.1
ccbuy.mdb register.asp
記 錄 格 式
序 號 欄 名 格 式 長 度 附 註 1 拍 賣 物 品 連 結 8
2 物 品 討 論 連 結 8 3 加 入 會 員 連 結 8 4 會 員 資 料 連 結 8 5 退 出 會 員 連 結 8 6 熱 門 特 賣 連 結 8 7 系 統 管 理 連 結 8 8 連 絡 我 們 連 結 8
表 3.1 網 站 首 頁
檔 案 名 稱 : register.asp 記 錄 格 式
序 號 欄 名 格 式 長 度 附 註 1 登 錄 會 員 名 稱 文 字 8 不 可 為 空 2 電 子 郵 件 位 址 文 字 50 不 可 為 空 3 會 員 性 別 文 字 8
4 連 絡 地 址 一 文 字 60 不 可 為 空
5 連 絡 地 址 二 文 字 60
6 使 用 者 國 家 下拉式選單 20 不 可 為 空 7 居 住 的 區 域 下拉式選單 20 不 可 為 空 8 確 定 送 出 按 鈕 連 結 20*8
9 錯 誤 訊 息 1 文 字 18 您 的 會 員 名 稱 沒 填 10 錯 誤 訊 息 2 文 字 18 您 的 會 員 名
稱 沒 填 11 錯 誤 訊 息 3 文 字 18 您 的 會 員 名
稱 沒 填 12 錯 誤 訊 息 4 文 字 18 您 的 email
已 申 請 過 13 錯 誤 訊 息 5 文 字 18 您 的 地 址 沒
填 回 主 選 單 按 鈕 連 結 8
表 3.2 會 員 資 料 填 寫
檔 案 名 稱 : ccbuy.mdb
記 錄 格 式
序 號 欄 名 格 式 長 度 附 註
1 Id 數 字 8 系統自動編號
2 cname 文 字 30
3 sex 文 字 8
4 Country 文 字 20
5 city 文 字 20
6 Address1 文 字 60 通 訊 地 址 一 7 Address2 文 字 60 通 訊 地 址 二
8 pwd 文 字 6
9 Email 文 字 50
10 cdate 日 期 8 會員登錄時間 日 期
11 guestip 文 字 12 會 員 登 錄 時 IP
表 3.3 線 上 競 標 系 統 資 料 庫
3.3.2.會員資料修改
圖 3.5 更 改 會 員 資 料 系 統 流 程 圖 檔 案 名 稱 : edit_user.asp
記 錄 格 式
序 號 欄 名 格 式 長 度 附 註 1 請填寫您的 E-Mail 文 字 50
2 請 填 寫 您 的 密 碼 文 字 6 3 電 子 信 箱 資 料 庫 連 結 50 4 您 的 署 名 資 料 庫 連 結 8 5 您 的 國 家 資 料 庫 連 結 20 6 居 住 城 市 資 料 庫 連 結 20 7 通 訊 地 址 資 料 庫 連 結 8
start
index.asp
edit_user.asp
procedure 1.2
ccbuy.mdb edit_run.asp
8 填 妥 送 出 文 字 按 鈕 20*8 表 3.4 會 員 資 料 更 改
檔 案 名 稱 : edit_run.asp 記 錄 格 式
序 號 欄 名 格 式 長 度 附 註 1 訊 息 文 字 18 修改完成
請回到首頁 表 3.5 會 員 資 料 更 改 完 成
3.3.3 線上拍賣物品系統
提供簡單容易的介面,提供會員來競標,需加入會員,才有競標 權,並提供放置物品圖片的網址,會員可以放上欲賣商品的圖片,以 增加商品的吸引力,可自訂競標的期限,讓商品可在自訂的時間內,
隨著投標者競標的價格而使商品賣價上升,也將拍賣物分門別類,讓 要購物的會員們,能夠清楚的知道要去哪些地方,而不用每個網頁都 要 瀏 覽 , 讓 會 員 使 用 更 方 便 。
圖 3.6 線 上 拍 賣 物 品 流 程 圖
檔 案 名 稱 : addnew.asp 記 錄 格 式
序 號 欄 名 格 式 長 度 附 註 1 新 會 員 註 冊 連 結 8 會 員 註 冊 2 會 員 名 稱 文 字 8 不 可 為 空 3 會 員 密 碼 文 字 8 不 可 為 空 4 拍 賣 物 名 稱 文 字 20
start
index.asp
addnew.asp
procedure 1.3
Preview.asp
procedure 1.4
ccbuy.mdb
ccbuy.mdb
5 拍 賣 物 目 錄 文 字 20 6 拍 賣 的 期 限 日 期 8 7 圖 片 的 URL 文 字 50 8 拍 賣 物 說 明 文 字 200 9 起 標 價 格 數 字 6 10 增 加 金 額 數 字 6 11 預 覽 拍 賣 物 文字連結 20*8
12 錯 誤 訊 息 1 文 字 18 會員名稱錯誤 13 錯 誤 訊 息 2 文 字 18 會員密碼錯誤
表 3.6 會 員 拍 賣 物 品 申 請
檔 案 名 稱 : addnew.asp 記 錄 格 式
序 號 欄 名 格 式 長 度 附 註 1 拍 賣 物 名 稱 文 字 20
2 拍 賣 物 目 錄 文 字 8 3 拍 賣 的 期 限 日 期 8 4 圖 片 的 URL 文 字 50
5 拍 賣 物 說 明 文 字 8 6 起 標 價 格 數 字 6 7 增 加 金 額 數 字 6
表 3.7 會 員 拍 賣 物 品 預 覽
3.3.4 線上物品討論
圖 3.7 線 上 物 品 討 論 流 程 圖
檔 案 名 稱 : BBS/index.asp start
index.asp
BBS/index.asp
BBS/show.asp
reply.asp
procedure 1.5
ccbuy.mdb show.asp
記 錄 格 式
序 號 欄 名 格 式 長 度 附 註 1 編 號 數 字 6 系 統 自 動 編 號 2 主 題 資 料 庫 連 結 8 會 員 註 冊 3 回 應 總 數 文 字 8 不 可 為 空 4 今 日 回 應 文 字 8 不 可 為 空 5 作 者 名 稱 文 字 20
6 貼 文 時 間 日 期 8 7 回 到 首 頁 按 鈕 連 結 20*8
表 3.8 物 品 討 論 區
檔 案 名 稱 : BBS/show.asp 記 錄 格 式
序 號 欄 名 格 式 長 度 附 註 1 拍 賣 品 文 字 20
2 拍 賣 者 連 結 8 會 員 註 冊 3 競 標 開 始 時 間 日 期 8 不 可 為 空 4 競 標 截 止 時 間 日 期 8 不 可 為 空 5 文 章 內 容 文 字 200
6 最 低 出 價 文 字 6 7 回 應 文 章 文 字 200 7 回 到 首 頁 按鈕連結 20*8
表 3.9 物 品 討 論 區 內 容 一 覽
檔 案 名 稱 : BBS/reply.asp 記 錄 格 式
序 號 欄 名 格 式 長 度 附 註 1 回 應 的 主 題 資 料 庫 連 結 20
2 回 應 者 名 字 資 料 庫 連 結 8 會 員 註 冊 3 電 子 信 箱 文 字 8 不 可 為 空 4 回 應 內 容 文 字 8 不 可 為 空 5 填 妥 送 出 按 鈕 20*8
6 清 除 重 填 按 鈕 20*8 7 回 到 首 頁 按 鈕 連 結 20*8
表 3.10 討 論 區 回 應
3.4 拍賣系統管理 3.4.1 增加目錄 :
圖 3.8 增 加 物 品 目 錄 流 程 圖 檔 案 名 稱 : admin/index.asp
記 錄 格 式
序 號 欄 名 格 式 長 度 附 註 1 管 理 者 密 碼 登 入 文 字 5
2 登 入 文 字 按 鈕 20*8 start
index.asp
Admin/index.asp
procedure 1.6
Admin/add_ca.as
procedure 1.7
ccbuy.mdb
ccbuy.mdb
3 回 到 首 頁 按 鈕 連 結 20*8 表 3.11 e-sale 系 統 管 理 檔 案 名 稱 : admin/add_ca.asp
記 錄 格 式
序 號 欄 名 格 式 長 度 附 註 1 目 前 存 在 的 目 錄 下 拉 式 文 字 20
2 新 增 的 目 錄 名 稱 文 字 20 3 新 增 目 錄 文 字 連 結 20*8 4 回 到 首 頁 文 字 連 結 20*8
表 3.12 新 增 物 品 類 別 管 理
3.4.2 刪除目錄
圖 3.9 刪 除 物 品 目 錄 流 程 圖 檔 案 名 稱 : admin/list_ca.asp
記 錄 格 式
序 號 欄 名 格 式 長 度 附 註 1 新 增 目 錄 文 字 20
2 列 出 目 錄 連 結 8 會 員 註 冊 3 列 出 拍 賣 品 文 字 8 不 可 為 空 4 列 出 會 員 文 字 8 不 可 為 空 5 目 錄 名 稱 連 結 8
start
index.asp
Admin/index.asp
procedure 1.6
Admin/list_ca.asp
procedure 1.8
ccbuy.mdb
ccbuy.mdb
6 拍 賣 品 數 數 字 6 7 可 多 選 刪 除 連 結 8 8 已 刪 除 目 錄 連 結 8 9 回 到 首 頁 連 結 8
表 3.13 刪 除 物 品 類 別 管 理
3.5 拍賣品管理
3.5.1 列出拍賣品
圖 3.10 拍 賣 品 管 理 流 程 圖
檔 案 名 稱 : admin/list_bid.asp 記 錄 格 式
序 號 欄 名 格 式 長 度 附 註 1 拍 賣 品 名 稱 文 字
2 提 供 者 連 結 8 會 員 註 冊 3 有 無 圖 示 文 字 8 不 可 為 空 4 拍 賣 品 描 述 文 字 8 不 可 為 空
start
index.asp
Admin/index.asp
procedure 1.6
admin/list_bid.asp
procedure 1.9
ccbuy.mdb
ccbuy.mdb
5 拍 賣 者 說 明 文 字 200 6 填 妥 送 出 文 字 方 塊 20*8
表 3.14 線 上 拍 賣 品 管 理
3.6 會員管理
3.6.1 列出會員
圖 3.11 會 員 管 理 流 程 圖 start
index.asp
Admin/index.asp
procedure 1.6
admin/list_user.asp
procedure 1.10
ccbuy.mdb
ccbuy.mdb
檔 案 名 稱 : admin/list_user.asp 記 錄 格 式
序 號 欄 名 格 式 長 度 附 註 1 會 員 署 名 文 字 8 不 可 為 空 2 居 住 城 市 連 結 8 會 員 註 冊 3 聯 絡 地 址 文 字 8 不 可 為 空 4 電 子 信 箱 文 字 8 不 可 為 空
表 3.15 會 員 管 理 系 統
Procedure 1.1
處理會員註冊資料的程序,將會員註冊的資料,回傳給 ccbuy.mdb,若會員資料錯誤,提供錯誤訊息給會員知道。
Set conn=Server.CreateObject("ADODB.Connection") param = "driver={Microsoft Access Driver (*.mdb)}"
conn.Open param & ";dbq=" & Server.MapPath("ccbuy.mdb") 來連結 ccbuy.mdb 資料庫,然後利用 sqlstr="select * from members where email='" & email & "'"用來判斷是否 email 已 被 使 用 , 最 後 將 資 料 傳 回 ccbuy.mdb。
Procedure 1.2
更改會員資料的程序,先以 email 和密碼來確認身份,通過後 則可進入會員自己的資料修改區,修改完後,再傳回 ccbuy.mdb。
If request("Request_Method")="POST" Then email=Request("email")
pwd=Request("pwd")
Set conn=Server.CreateObject("ADODB.Connection") param = "driver={Microsoft Access Driver (*.mdb)}"
conn.Open param & ";dbq=" & Server.MapPath("ccbuy.mdb")
Procedure 1.3
驗證會員身分的功能,用很簡單的方法來比對會員的帳號,與 密碼,來判斷是否為會員,若是會員且密碼正確,就可以進入資料 修 改 畫 面 。
cname=request("cname") pwd=request("pwd")
Set conn=Server.CreateObject("ADODB.Connection") param = "driver={Microsoft Access D river (*.mdb)}"
conn.Open param & ";dbq=" & Server.MapPath("ccbuy.mdb") Set rs=Server.CreateObject("ADODB.Recordset") sqlstr="select * from members where cname='"&cname&"'"
if rs("pwd") <> pwd then rs.close
conn.close Response.end
Procedure 1.4
新增拍賣品的程序,讓會員決定要賣哪種物品類別,來決定 Category,填好各項資料後,再將資料傳回 ccbuy.mdb 的 data 裡 面 。
Procedure 1.5
討論區預覽的程序,並將 reply_today,hits,ItemID, ItemTitle,reply 把這些資料從資料庫中抓出來,直接在網頁上 呈 現 出 來 , 讓 會 員 可 以 檢 視 自 己 的 文 章 是 否 正 確 。
Procedure 1.6
線上拍賣系統的管理者登入的程序,和討論區則只需密碼即 可 。 因 為 直 接 寫 在 admin/index.asp 之 中 了 。
if password="dolek"Then
Session("password")="passall"
Else
response.write "<center><font size=7 color=ff0000>
密 碼 錯 誤 </font>"
response.end End if
直接寫在 manage.asp 裡面,而不需要經過資料庫的比對,而 asp 的程式碼內容,瀏覽本網站的顧客是看不到的,也看不到密碼 了 , 若 輸 入 錯 誤 :
If session("password")<>"dolek" Then response.redirect "index.asp"
end if
則 會 回 重 回 index.asp。
Procedure 1.7
增加物品目錄的程序,先連結到 ccbuy.mdb 再來處理目錄的 增 加 與 下 拉 式 的 選 單 。
CaName=Request("CaName")
Set conn=Server.CreateObject("ADODB.Connection") param = "driver={Microsoft Access Driver (*.mdb)}"
conn.Open param & ";dbq=" &Server.MapPath("../ccbuy.mdb") Set rs=Server.CreateObject("ADODB.Recordset") sqlstr="select * from Category"
Procedure 1.8
刪除目錄程序,先連結到 ccbuy.mdb,可以直接刪除目錄,
但實際上並不會真正的刪除,而要進一步選擇永久刪除,才會真 正 的 刪 除 , 也 提 供 復 原 資 料 庫 的 功 能 。
Procedure 1.9
列出目前站內拍賣品,連接資料庫後,可以直接來修改內 容,以及延長投標時間,也可以刪除拍賣品,或者還原已刪除的 拍 賣 品 。
Procedure 1.10
處理會員資料的程序,主要是來修改會員的資料,或者刪除會員 的 資 料 。
If rs.Recordcount<>0 Then cname=rs("cname")
City=rs("City")
address1=rs("address1") email=rs("email")
rs.Update End If
也用多重選擇方式,讓管理者可以一次可多選會員來進行操作,
方 便 管 理 者 的 操 作 。
第四章 系統製作
系統製作是一個資訊系統開發的過程中,非常重要的一環,所花 費的工作時間、資源以及精神,在整個資訊系統的開發成分佔有不小 的比例。系統製作就是把一個概念轉為一個實體的過程,一般而言,
每 一 個 系 統 的 製 作 包 括 了 IPO 三 個 部 分 。 1. Input : 系 統 的 輸 入 。
2. Process : 系 統 輸 出 的 過 程 。 3. Output : 系 統 的 輸 出 。
就 以 e-sale 網 站 的 主 要 功 能 來 做 說 明 。
4.1 會員申請功能
e-sale 拍賣網站有些功能,是只有 e-sale 的會員才能擁有的,
在加入會員後,就可以在本網站的網站上,拍賣物品和參予競標,也 可 以 讓 交 易 更 有 保 障 。
此 功 能 分 成 了 二 個 子 功 能 。
1.會員註冊
2.會員資料修改
(1)會員註冊
(a) Input:
先進入主畫面 index,然後點選【加入會員】,如下頁【圖 4.1】所示,然後連結到註冊網頁,如【圖 4.2】,按【確定送 出 】 後 , 即 可 將 會 員 註 冊 資 料 回 傳 給 系 統 。
圖 4.1 e-sale 拍 賣 網 首 頁
圖 4.2 會 員 基 本 資 料 輸 入 (b) Process:
If request("Request_Method")="POST" then
guestip=Request.ServerVariables("REMOTE_ADDR") cname=request("cname")
email=request("email")
Set conn=Server.CreateObject("ADODB.Connection") param = "driver={Microsoft Access Driver (*.mdb)}"
conn.Open param & ";dbq=" & Server.MapPath("ccbuy.mdb") Set rs=Server.CreateObject("ADODB.Recordset")
sqlstr="select * from members where email='" & email & "'"
rs.open sqlstr,conn,3,2