打印本文 打印本文  关闭窗口 关闭窗口
ASP与SQL网站数据库程序设计(15)
作者:.. 文章来源:科学出版社 点击数: 更新时间:2004/1/25 1:03:54
else

29:      Currencies = -1

30:  end if

31: %>

程序说明

12~14行:取得全图预览的显示方式。在系统设计中,全图预览方式共分为“JPG图文件的显示”以及“PDF文件的显示”。主要的区别在于打开新窗口时,所加载文件的扩展名不同而已。

16~18行:从“产品基本信息”表中,取出与“类别编号”相符的所有记录,并且将这些记录存放在Datas数组变量中。

19~22行:从“产品类别”表中取出相关的信息。事实上,用户也可以在上一个程序中,将相关信息转发进来。

24~30行:从“币别信息”表中,取出所有的币别信息,并且将查询结果存放在“Currencies”数组变量中。

14-4-3 全图预览方式的设置

本段程序代码属于javascriptASP程序混合所产生的结果。主要的运作方式在于将javascript程序代码视为一般文字的处理。以下是这个程序段的内容与说明。

ProductShow.asp”程序段

37: <Script Language=javascript>

38: <!--

39: function Clicks(i)

40:  {

41: <% Select Case FullViewMethod

42:  case 0 %>

43:     Target = open("/ProductFullView.asp?ProductNo=" + i , "NewScreen", "toolbar=No,width=640,height=480,location=no,directories=no,status=no,menubar=no,scrollbars=yes,resizable=no");

44: <% Case 1 %>

45:     Target = open("/Images/" + i + ".pdf" , "NewScreen", "toolbar=No,width=640,height=480,location=no,directories=no,status=no,menubar=no,scrollbars=yes,resizable=yes" ) ;

46: <% end Select %>

47:  }

48: // -->

49: </Script>

程序说明

39行:Clicks(i),设置从网页上传送进来的数值内容。而此数值内容则为“类别编号”+“产品代号”。

41~46行:根据取得的“全图预览方式”的数值,产生不同的javascript程序代码。例如:FulleViewMethod = 0时,所产生的是:

Target = open("/ProductFullView.asp?ProductNo=" + i , "NewScreen", "toolbar=No,width=640,height=480,location=no,directories=no,status=no,menubar=no,scrollbars=yes,resizable=no");

FulleViewMethod = 1 时,所产生的是:

Target = open("/Images/" + i + ".pdf" , "NewScreen", "toolbar=No,width=640,height=480,location=no,directories=no,status=no,menubar=no,scrollbars=yes,resizable=yes" ) ;

14-4-4 动态展示产品内容

一般来说,只要是连接到数据库的ASP程序,其内容多半都会根据数据库内容的变动产生动态显示的效果,当然本系统也是如此,同样也是利用数据库的内容,产生动态显示信息的效果。以下是这个程序段的实际内容与说明:

ProductShow.asp”程序段

73: <% for i = 0 to ubound(datas,2) %>

74:  <a name="<% = datas(0,i) %>"></a>

75:  <table border=0 cellpadding=1 cellspacing=1 align=center>

76:  <tr>

77:      <td class='BannerFont' align=left valign=top><img src="/ images/productname.gif" border=0></td>

78:      <td class='documentfont'><% = datas(1,i) %></td>

79:      <td align=center><img src="/Images/CategoryName1.gif" bor-der=0></td>

80:      <td class='documentfont'><% = ClassifyName %></td>

81:      <td rowspan="5" align="center" width=124>

82:     <a Name="CP" style='cursor:Hand' onClick="Clicks(&quot; <% = datas(0,i) %>&quot;)" class='DocumentFont'>

83:     <img src="/Images/<% = datas(0,i)%>_1.jpg" border=0 alt= "全图预览"><br>

84:     <img Src="/Images/FullView3.gif" Border=0 alt="全图预览"> 全图预览</a><br>

85:

86:     <a href="/productshow.asp?moreinfo=<% = datas(0,i) %>&Cl-assifyNo=<% = request.querystring("ClassifyNo")%>#<% = datas(0,i) %>" class='DocumentFont'>

87:    <img Src="/images/MoreInfo1.gif" border=0 alt="更多信息! "> 更多信息</a>

88:     </td>

89:  </tr>

90:

91:  <tr>

92:  <td><img src="/images/price.gif" border=0></td>

93:  <td class='documentfont'>

94:  <% = datas(5,i) %>$ <% = datas(4,i) %></td>

95:

96:  <td align=center><img src="/images/Delivery.gif" border= 0></td>

97:  <td class='documentfont'><% = datas(6,i) %> </td></tr>

98:

99: <tr><td class='BannerFont' align=left valign=top><img src= "/Images/CatNo.gif" border=0></td>

100:     <td class='documentfont' Colspan="3"><% = datas(0,i)%> </td></tr>

101:

102: <tr><td class='BannerFont' align=left valign=top><img src ="/Images/Specification.gif" border=0></td>

103:     <td class='documentfont' colspan="3"><textarea Cols= "40" Rows="3" class='documentfont'><% = trim(datas(3,i)) %></te-xtarea>

104:  </td></tr>

105:

106:  <tr><td class='BannerFont' align=left valign=top><img src= "/images/Memo.gif" border=0>

107:     </td><td class='documentfont' colspan="3"><% = datas(8,i) %></td></tr>

108:

109:  </table>

110:  <hr width='85%' align=center color=Orchid size=2>

111: <%

112: next

113: objconn.close

114: %>

程序说明

74行:这是一个超级链接的标记,与一般超链接标记不同的是只有超级链接标记的名称,却没有“href”属性。这是常用的网页内容定位模型。

73~114行:编写这么多的程序代码只为了一个目的,将Datas数组变量中的记录,一一按照格式存放整齐而已。而Datas数组的内容则是根据第16行所产生的SQL Query内容,向“产品基本信息”表所查询而得的数据数组。并且,Datas数组变量的实质内容就如同表的缩影一样,每一行是一条记录。

82行:本行程序代码主要的功能是打开新的窗口,并且显示产品的原貌。

在这些程序段中,最重要的要算下面两行程序代码。在此代码中,指定的名称是“CP”,同时,在按下鼠标左键选择时,将会把产品的“产品代号”传送给javascript进行处理。所使用的程序代码如下所示:

<a Name="CP" style='cursor:Hand' onClick="Clicks(&quot;<% = datas(0,i) %>&quot;)" class='DocumentFont'>

其中“&quot;”所代表的是“"(双引号)”。由于“onClick=" Clicks(i)"”程序代码在进行参数的传递中,其中i的参数必须用双引号括起来。但是onClickjavascript事件却必须要将事件名称用双引号括起来,为避免发生混淆,因而使用HTML文件的特殊码““”(双引号)”,将参数括起来。

86行:

<a href="/productshow.asp?moreinfo=<% = datas(0,i) %>&ClassifyNo=<% = request.querystring("ClassifyNo")%>#<% = datas(0,i) %>" class='DocumentFont'>

将参数传送给自己?这主要是在用户选择“更多信息”的动作发生时,将“产品代号”传送给专门负责Cookies处理的“PdRequest.inc”协助Cookies的处理。同时,本程序又具有根据“产品代号”自动卷动浏览器画面的功能;因此会将“类别编号”以及“产品代号”重新传送一次,以免因为网页重新整理之后,造成画面位置改变的情况。这样的做法特别适用于局域网中,因为传递信息的速度较快,以致于用户可能感觉画面没有更新过。

至于“ProductShow.asp”程序的其他部分,由于所用的命令与方法多半在前面的章节中提供了完整的说明,因此,在此就不再多做叙述。

14-5  新上市产品

通常一个公开的网站,多半都会在产品上市时,将产品的信息直接显示在首页中。同样的道理,这种方式也是可以应用在“头条新闻”、“最新消息”等方面,只是显示的资料、样式不同罢了。实际上,“NewArrival.asp”与“ProductShow.asp”程序读

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



打印本文 打印本文  关闭窗口 关闭窗口