您现在的位置: 军旅同心-旅游自驾-军旅文学 >> 读书赏析 >> 学习园地 >> 电脑网络 >> 学习资料 >> 正文
ASP与SQL网站数据库程序设计(16)
作者:.. 文章来源:科学出版社 点击数: 更新时间:2004-1-25 1:09:56
行:将“产品类别”表中所有的记录内容取出来,并且存放在“Datas1”数组变量中。

12~14行:如果单击“删除确认”按钮,则执行调用自定义函数“DeleteProducts”。

52~55行:利用“For…Next”循环,将所有的“产品类别”记录的内容,以下拉式菜单的方式,显示在画面上。

61~67行:利用“For…Next”循环,判断传送进来的“ClassifyNo”变量,是否与目前Datas1数组变量中的元素相符。如果相符,则执行调用自定义函数“ProductShow”。

接着将要进行的是“产品摘要信息的显示”。为什么是摘要信息?其实这是非常简单的问题。一般来说,由于“删除”产品的人为操作,多半都是直接删除特定的产品以及相关信息。因此,列出摘要信息以及图片供管理员参考、确认即可。以下是列出摘要信息的执行结果、程序段以及程序说明:

ProductDelete.asp 程序段

71: <% function ProductsShow() %>

72:

73: <table Border=1 border=1 cellpadding=1 cellspacing=1 bgcolor='tan' class='ChiDingSt03'>

74: <tr>

75:      <td>删除<input type=hidden Name=ClassifyNo Value="<% = request.QueryString("ClassifyNo")%>"></td>

76:      <td width='80'>产品代号</td>

77:      <td width='240'>规格说明</td>

78:      <td width='120'>产品缩图</td>

79: </tr>

80: <%

81: SQL = "Select * from 产品基本信息 Where 类别编号='" & ClassifyNo & "' Order by 类别编号,产品代号"

82: On Error Resume Next

83: Set Rs = OBJConn.Execute(SQL)

84:

85: if not rs.eof then

86:      Datas = rs.getrows(maxrecords)

87:      Session("Recordes") = ubound(datas,2)

88:      FoundDatas = 1

89: else

90:      Session("Recordes") = -1

91:      FoundDatas = 0

92: end if

93: if FoundDatas = 1 then

94:      for j = 0 to ubound(datas,2)

95:      %>

96:      <tr>

97:          <td align='center'>

98:      <input type=checkbox Name='Check<%= j %>'>

99:      <input type=hidden Name='Products<%=j%>' Value= '<% = datas(0,j)%>'>

100:             </td>

101:             <td><% = Datas(0,j) %></td>

102:             <td><% = datas(1,j) %></td>

103:             <td><img src='/Images/<% = datas(0,j) %>_1.jpg' border='0'></td>

104:         </tr>

105:         <%

106:         next

107:     end if

108: %>

109: <tr>

110: <td colspan=4 align=center><input type=submit name= "Submit" value="删除确认"> 

111: <input type=reset name="reset" value="清除选择">

112: </table>

113:

114: <% end function %>

程序说明

81~83行:从“产品基本信息”表中,取出与“ClassifyNo”变量内容相符的特定类别相关记录的内容。

85~92行:如果相关的记录存在于“产品基本信息”表中,则设置相关的变量内容。这里利用“Session("Recordes")”存储SQL Query 查询的 RecordSet 记录集合。

93~107行:如果“产品基本信息”表中有相关的记录存在时,则利用本段程序代码将相关的摘要信息输出到浏览器上。

ProductDelete.asp 程序段

129: <%

130: Function DeleteProducts

131: if Session("Recordes") >= 0 Then

132:     SQL = "Delete From 产品基本信息 Where "

133:     for i =0 to Session("Recordes")

134:         if request.form("Check" & i) = "on" then

135:             SQL = SQL & "产品代号='" & request.form("Products" & I ) & "' Or "

136:         end if

137:     next

138:     SQL = left(SQL , len(SQL) - 4)

139:     Set Rs = OBJConn.Execute(SQL)

140:     response.redirect "/ProductDelete.asp?ClassifyNo=" & request.form("ClassifyNo")

141: end if

142: End Function

143: %>

程序说明

本段程序代码与“产品类别”中的“删除产品类别”的基本原理相同,都是利用检查复选框的内容是否已经被选中,接着才执行进一步的处理程序。

15-9  产品信息修改

此程序段是以“产品类别”或“产品代号”作为第一步,然后再对信息进行修改,其执行结果、程序段及程序说明如下:

 

ProductoModify.asp程序段

01: <%

02: Response.Expires = 0

03: Response.Buffer = "False"

04: ClassifyNo = request.querystring("ClassifyNo")

05: Set OBJConn = Server.CreateObject("ADODB.Connection")

06: OBJConn.Open "Trade", "test", "test1"

07: if request.form("Submit") = "修改确认" then

08: ProductsModify

09: else

10: MaxRecords = 1000

11: SQL = "Select * from 产品类别 order by 类别编号"

12: Set Rs = OBJConn.Execute(SQL)

13: Datas1 = rs.getrows(maxrecords)

14: SQL = "Select * from 币别信息 order by 币别代号"

15: set Rs = OBJConn.Execute(SQL)

16: if not rs.eof then

17:      Currencies = rs.getrows(maxrecords)

18: else

19:      showinfo "请先新增币别!","/currency.asp",1

20: end if

21: MainScreen

22: end if

23: %>

程序说明

11~20行:从“产品类别”以及“币别信息”表中,取出所有的记录,并且分别存放在“Datas1”数组变量及“Currencies”数组变量中。

21行:如果上述的程序运行过程一切顺利,并且相关表中也有记录存在,则调用自定义函数“MainScreen”。

接着将要执行的是自定义函数“MainScreen”。这个函数最主要的功能在于显示产品的详细信息。以下是这段程序代码在执行之后,显示的结果、程序段及程序说明:

ProductMod

上一页  [1] [2] [3] [4] [5] [6] [7] [8] [9] [10]  ... 下一页  >> 


更多
免责声明:作品版权归所属媒体与作者所有!!本站刊载此文不代表同意其说法或描述,仅为提供更多信息。如果您认为我们侵犯了您的版权,请告知!本站立即删除。有异议请联系我们。
文章录入:烟灰缸    责任编辑:烟灰缸 
网友评论:(只显示最新10条。评论内容只代表网友观点,与本站立场无关!)