第四章 系統製作
4.2 系統管理者
4.2 系統管理者 此系統的功能如下 1.會員資料查詢 2.會員資料刪除 3.新增唱片資料 4.修改唱片資料 5.查詢唱片資料 1. 會員資料查詢
1.1 所有會員資料查詢
(a) Input 於管理者頁面點選會員資料查詢。如下圖 4.1 所示:
圖 4.20 會員資料查詢條件
(b) Process 系統管理者在管理者頁面選取查詢會員資料則可依 照查詢條件尋找會員資訊,若選擇所有會員資料查詢則系統從 資料庫中傳回所有會員資訊。
set cn = server.createobject ("adodb.connection") cn.open "cdsell"
set rs = cn.execute("select * from mem_data") Response.Write "<table border=1 cellpadding=2 cellspacing=2>"
response.write "<tr>"
response.write "<td>" & "編號" & "</td>"
response.write "<td>" & "姓名" & "</td>"
response.write "<td>" & "ID" & "</td>"
response.write "<td>" & "password" & "</td>"
response.write "<td>" & "付款方式" & "</td>"
response.write "<td>" & "性別" & "</td>"
response.write "<td>" & "取貨方式" & "</td>"
response.write "<td>" & "電話" & "</td>"
response.write "<td>" & "手機電話" & "</td>"
response.write "<td>" & "住址" & "</td>"
response.write "<td>" & "e-mail" & "</td>"
response.write "<td>" & "註冊日期" & "</td>"
response.write "</tr>"
do until rs.eof
response.write "<tr>"
response.write "<td>" & rs("id_num") & "</td>"
response.write "<td>" & rs("name") & "</td>"
response.write "<td>" & rs("id") & "</td>"
response.write "<td>" & rs("pwd") & "</td>"
response.write "<td>" & rs("payway") & "</td>"
response.write "<td>" & rs("sex") & "</td>"
response.write "<td>" & rs("getway") & "</td>"
response.write "<td>" & rs("phone") & "</td>"
response.write "<td>" & rs("cellphone") & "</td>"
response.write "<td>" & rs("addr") & "</td>"
response.write "<td>" & rs("e-mail") & "</td>"
response.write "<td>" & rs("inputtime") & "</td>"
response.write "</tr>"
rsCount = rsCount + 1 rs.movenext
loop
response.write "</table>"
response.write "<hr>" & "共有" & rsCount & "筆記錄"
response.write "<hr>"
(c) Output
圖 4.21 所有會員資料 1.2 會員編號查詢
(a)Input 在會員資料查詢(參圖 4.1)點選會員編號查詢,輸入 欲查詢會員資料之會員編號。如下圖 4.3 所示:
圖 4.22 輸入查詢會員資料編號
(b)Process 輸入欲查詢的會員資料編號後,系統會從資料庫中尋
if len(query.number.value) = 0 then
errflag=false
end if
if (errflag=false) then
end function -->
</script>
number=request.form("number")
set cn = server.createobject ("adodb.connection") cn.open "cdsell"
set rs = cn.execute("select * from mem_data where id_num='"
& number & "'")
Response.Write "<table border=1 cellpadding=2 cellspacing=2>"
response.write "<tr>"
response.write "<td>" & "編號" & "</td>"
response.write "<td>" & "姓名" & "</td>"
response.write "<td>" & "ID" & "</td>"
response.write "<td>" & "password" & "</td>"
response.write "<td>" & "付款方式" & "</td>"
response.write "<td>" & "性別" & "</td>"
response.write "<td>" & "取貨方式" & "</td>"
response.write "<td>" & "電話" & "</td>"
response.write "<td>" & "手機電話" & "</td>"
response.write "<td>" & "住址" & "</td>"
response.write "<td>" & "e-mail" & "</td>"
response.write "<td>" & "註冊日期" & "</td>"
response.write "</tr>"
do until rs.eof
response.write "<tr>"
response.write "<td>" & rs("id_num") & "</td>"
response.write "<td>" & rs("name") & "</td>"
response.write "<td>" & rs("id") & "</td>"
response.write "<td>" & rs("pwd") & "</td>"
response.write "<td>" & rs("payway") & "</td>"
response.write "<td>" & rs("sex") & "</td>"
response.write "<td>" & rs("getway") & "</td>"
response.write "<td>" & rs("phone") & "</td>"
response.write "<td>" & rs("cellphone") & "</td>"
response.write "<td>" & rs("addr") & "</td>"
response.write "<td>" & rs("e-mail") & "</td>"
response.write "<td>" & rs("inputtime") & "</td>"
response.write "</tr>"
rs.movenext loop
response.write "</table>"
response.write "<hr>"
(c)Output
圖 4.23 會員資料查詢結果 1.3 會員姓名查詢
(a)Input 在會員資料查詢(參圖 4.1)點選會員姓名查詢,輸入
欲查詢會員資料之會員姓名。如下圖 4.5 所示:
圖 4.24 輸入查詢會員資料姓名
(b)Process 輸入欲查詢的會員資料姓名後,系統會從資料庫中尋 找該筆會員資料並顯示在圖 4.6。
<script language="vbscript">
<!--
function queryname() dim errflag,msg errflag=true
if len(que.name.value) = 0 then errflag=false
end if
if (errflag=false) then
name=request.form("name")
set cn = server.createobject ("adodb.connection") cn.open "cdsell"
set rs = cn.execute("select * from mem_data where name='"
& name & "'")
Response.Write "<table border=1 cellpadding=2 cellspacing=2>"
response.write "<tr>"
response.write "<td>" & "編號" & "</td>"
response.write "<td>" & "姓名" & "</td>"
response.write "<td>" & "ID" & "</td>"
response.write "<td>" & "password" & "</td>"
response.write "<td>" & "付款方式" & "</td>"
response.write "<td>" & "性別" & "</td>"
response.write "<td>" & "取貨方式" & "</td>"
response.write "<td>" & "電話" & "</td>"
response.write "<td>" & "手機電話" & "</td>"
response.write "<td>" & "住址" & "</td>"
response.write "<td>" & "e-mail" & "</td>"
response.write "<td>" & "註冊日期" & "</td>"
response.write "</tr>"
do until rs.eof
response.write "<tr>"
response.write "<td>" & rs("id_num") & "</td>"
response.write "<td>" & rs("name") & "</td>"
response.write "<td>" & rs("id") & "</td>"
response.write "<td>" & rs("pwd") & "</td>"
response.write "<td>" & rs("payway") & "</td>"
response.write "<td>" & rs("sex") & "</td>"
response.write "<td>" & rs("getway") & "</td>"
response.write "<td>" & rs("phone") & "</td>"
response.write "<td>" & rs("cellphone") & "</td>"
response.write "<td>" & rs("addr") & "</td>"
response.write "<td>" & rs("e-mail") & "</td>"
response.write "<td>" & rs("inputtime") & "</td>"
response.write "</tr>"
rs.movenext loop
response.write "</table>"
response.write "<hr>"
(c)Output
圖 4.25 會員資料查詢結果 2.會員資料刪除
(a)Input 在管理者頁面點選會員資料刪除,輸入欲刪除之會員資 料編號。如下圖 4.7 所示:
圖 4.26 輸入會員資料刪除編號
(b)Process 在輸入欲刪除會員資料編號後,按下確定刪除按鈕系 統將會從資料庫中將該筆會員資料刪除,並顯示刪除成功訊息。
<script language="vbscript">
<!--
function delete() dim errflag,msg errflag=true
if len(memdel.number.value) = 0 then errflag=false
end if
if (errflag=false) then
msg ="會員編號不可為空白"
MsgBox msg,48,"喔喔!!"
exit function end if
delete=errflag memdel.submit
end function -->
</script>
number=request.form("number")
set cn = server.createobject ("adodb.connection") cn.open "cdsell"
set rs = cn.execute("delete from mem_data where id_num='"
& number & "'")
(c)Output
圖 4.27 會員資料刪除成功 3.新增唱片資料
(a)Input 在管理者頁面點選新增唱片資料,輸入欲新增之唱片資 料。如下圖 4.9 所示:
圖 4.28 新增唱片資料輸入
(b)Process 在輸入欲新增唱片資料後,按下送出按鈕系統將會從 資料庫中將該筆輸入資料新增,並顯示新增成功訊息。
<script language="vbscript">
<!--
function infocheck() dim errflag,msg errflag=true
if len(cdinfo.singer.value) = 0 then errflag=false
elseif len(cdinfo.cdname.value)=0 then errflag=false
elseif len(cdinfo.price.value)=0 then errflag=false
elseif len(cdinfo.lang.value)=0 then errflag=false
end if
if (errflag=false) then
msg ="歌手名稱.專輯名稱.性別.語言.數量.價格皆不可為 空白"
MsgBox msg,64,"喔喔!!"
exit function end if
infocheck=errflag cdinfo.submit end function
-->
</script>
function get_sn()
sqlstr="select cd_num from cd_data order by cd_num"
set rs = conn.execute(sqlstr) if not rs.eof then
while not rs.eof
get_sn=rs("cd_num") rs.movenext
wend
get_sn=get_sn+1 else
get_sn=1 end if
rs.close end function sub cdin()
set conn=server.createobject("adodb.connection") conn.open "cdsell"
cd_num=get_sn
SQL="insert into cd_data
values('"&cd_num&"','"&request.form("singer")&"','"&reques t.form("sex")&"','"&request.form("lang")&"','"&request.for m("cdname")&"','"&request.form("price")&"','"&request.form ("total")&"')"
conn.execute(SQL) conn.close
end sub
(c)Output
圖 4.29 新增唱片資料成功訊息 4.修改唱片資料
(a)Input 在管理者頁面點選修改唱片資料,輸入欲修改之唱片資 料編號,系統會顯示出原本資料庫內資訊,管理者可以填入修改選 項。如下圖 4.11 和圖 4.12 所示:
圖 4.30 修改唱片編號輸入
圖 4.31 輸入欲修改唱片資料項目
(b)Process 在輸入欲修改唱片資料項目後,按下送出修改系統將 會從資料庫中將該筆資料修改,並顯示新增成功訊息。
<script language="vbscript">
<!--
function editcheck() dim errflag,msg errflag=true
if len(editcd.singers.value) = 0 then focusto(0)
errflag=false
elseif len(editcd.cdnames.value)=0 then focusto(1)
errflag=false
elseif len(editcd.prices.value)=0 then focusto(2)
errflag=false end if
if (errflag=false) then
msg ="每一空格請填好資料"
MsgBox msg,64,"錯誤訊息"
exit function
elseif (errflag =true) then editcd.submit
end if
end function sub focusto(x)
document.editcd.elements(x).focus() end sub
-->
</script>
Dim cn
Dim rs
'passA=request.querystring("number") session("cd_num")=request.form("number")
number=request.form("number")
set cn = server.createobject ("adodb.connection")
cn.open "cdsell"
set rs = cn.execute("select * from cd_data where cd_num='"&
number &"'")
Response.Write "<table border=1 cellpadding=2 cellspacing=2>"
response.write "<tr>"
response.write "<td>" & "編號" & "</td>"
response.write "<td>" & "歌手名稱" & "</td>"
response.write "<td>" & "專輯名稱" & "</td>"
response.write "<td>" & "價格" & "</td>"
response.write "</tr>"
do until rs.eof
response.write "<tr>"
response.write "<td>" & rs("cd_num") & "</td>"
response.write "<td>" & rs("singer_name") & "</td>"
response.write "<td>" & rs("cd_name") & "</td>"
response.write "<td>" & rs("price") & "</td>"
response.write "</tr>"
rs.movenext
loop
response.write "</table>"
response.write "<hr>"
(c)Output
圖 4.32 修改唱片資訊成功訊息 5.查詢唱片資料
5.1 所有唱片資料查詢
(a)Input 於管理者頁面點選查詢唱片資料。如下圖 4.14 所示:
圖 4.33 查詢唱片條件
(b)Process 系統管理者在管理者頁面選取查詢唱片資料則可依 照查詢條件尋找唱片資訊,若選擇所有唱片資料查詢則系統從資料 庫中傳回所有唱片資訊。
Dim cn Dim rs
Dim cdnames
cdnames=request.form("cdname1")
set cn = server.createobject ("adodb.connection") cn.open "cdsell"
set rs = cn.execute("select * from cd_data") Response.Write "<table border=1 cellpadding=2 cellspacing=2>"
response.write "<tr>"
response.write "<td>" & "編號" & "</td>"
response.write "<td>" & "歌手名稱" & "</td>"
response.write "<td>" & "性別" & "</td>"
response.write "<td>" & "專輯名稱" & "</td>"
response.write "<td>" & "語言" & "</td>"
response.write "<td>" & "價格" & "</td>"
response.write "<td>" & "存貨" & "</td>"
response.write "</tr>"
do until rs.eof
response.write "<tr>"
response.write "<td>" & rs("cd_num") & "</td>"
response.write "<td>" & rs("singer_name") & "</td>"
response.write "<td>" & rs("sex") & "</td>"
response.write "<td>" & rs("cd_name") & "</td>"
response.write "<td>" & rs("lang") & "</td>"
response.write "<td>" & rs("price") & "</td>"
response.write "<td>" & rs("total") & "</td>"
response.write "</tr>"
rsCount = rsCount + 1 rs.movenext
loop
response.write "</table>"
response.write "<hr>" & "共有" & rsCount & "筆記錄"
response.write "<hr>"
(c)Output
圖 4.34 所有唱片資料 5.2 歌手姓名查詢
(a)Input 在唱片資料查詢(參圖 4.14)點選歌手名稱查詢,輸 入欲查詢唱片資料之歌手姓名。如下圖 4.16 所示:
圖 4.35 輸入歌手姓名查詢
(b)Process 輸入欲查詢的歌手姓名後,系統會從資料庫中尋找 該筆唱片資料並顯示在圖 4.17。
<script language="vbscript">
<!--
function query() dim errflag,msg
errflag=true
if len(que.singer1.value) = 0 then
errflag=false
end if
if (errflag=false) then
singers=request.form("singer1")
set cn = server.createobject ("adodb.connection") cn.open "cdsell"
set rs = cn.execute("select * from cd_data where singer_name='"& singers &"'")
Response.Write "<table border=1 cellpadding=2 cellspacing=2>"
response.write "<tr>"
response.write "<td>" & "編號" & "</td>"
response.write "<td>" & "歌手名稱" & "</td>"
response.write "<td>" & "性別" & "</td>"
response.write "<td>" & "專輯名稱" & "</td>"
response.write "<td>" & "語言" & "</td>"
response.write "<td>" & "價格" & "</td>"
response.write "<td>" & "存貨" & "</td>"
response.write "</tr>"
do until rs.eof
response.write "<tr>"
response.write "<td>" & rs("cd_num") & "</td>"
response.write "<td>" & rs("singer_name") & "</td>"
response.write "<td>" & rs("sex") & "</td>"
response.write "<td>" & rs("cd_name") & "</td>"
response.write "<td>" & rs("lang") & "</td>"
response.write "<td>" & rs("price") & "</td>"
response.write "<td>" & rs("total") & "</td>"
response.write "</tr>"
rs.movenext loop
response.write "</table>"
response.write "<hr>"
(c)Output
圖 4.36 唱片資料查詢結果 5.3 唱片名稱查詢
(a)Input 在唱片資料查詢(參圖 4.14)點選唱片名稱查詢,輸 入欲查詢唱片資料之專輯名稱。如下圖 4.18 所示: