IBM Books

Net.Data 管理与程序设计指南,OS/2、Windows NT 以及 UNIX 版

HTML 块

Net.Data 宏文件包含 HTML 块,以及 HTML 块中的函数,它们在 Web 浏览器上 生成 HTML 输出。在宏文件中,必须指定至少一个 HTML 块。HTML 块的内容控制 Net.Data 调用的 其余部分。

任何有效的 HTML 语句都可以出现在 HTML 块中。另外,在 HTML 块中还可以使用 INCLUDE 语句、函数调用和变量引用。下例显示 Net.Data 宏中的 HTML 块的一般用法:

%DEFINE DATABASE="MNS96"
 
%HTML(INPUT) {
<H1>Hardware Query Form</H1>
<HR>
<FORM METHOD="POST" ACTION="/cgi-bin/db2www/equiplst.d2w/report">
<dl>
<dt>What hardware do you want to list?
<dd><input type="radio" name="hdware" value="MON" checked>Monitors
<dd><input type="radio" name="hdware" value="PNT">Pointing devices
<dd><input type="radio" name="hdware" value="PRT">Printers
<dd><input type="radio" name="hdware" value="SCN">Scanners
</dl>
<HR>
<input type="submit" value="Submit">
</FORM>
%}
 
%FUNCTION(DTW_SQL) myQuery() {
SELECT MODNO, COST, DESCRIP FROM EQPTABLE WHERE TYPE=$(hdware)
%REPORT{
<B>Here is the list you requested:</B><BR>
%ROW{
<HR>
$(N1): $(V1)    $(N2): $(V2)
<P>
$(V3)
%}
%}
%}
 
%HTML(REPORT){
  @myQuery()
%}

您可以如下例所示来从 HTML 链接中调用 Net.Data 宏:

<a href="http://www.ibm.com/cgi-bin/db2www/equiplst.d2w/input">List of hardware</a>

当应用程序用户单击此链接时,Web 浏览器调用 Net.Data,Net.Data 语法分析宏文件。当 Net.Data 开始处理在调用上指定的 HTML 块时(在此情况下为 HTML(INPUT) 块),它开始处理其中 的文本。Net.Data 对于不能识别为 Net.Data 宏语言结构的任何东西,都假定为 HTML 语句,并发送给浏览器来显示。

在用户作出选择并按了 Submit 按钮之后,Net.Data 运行 HTML FORM 元素的 ACTION 部 分,这指出了对 Net.Data 宏的 HTML(REPORT) 块的调用。然后,Net.Data 象处理 HTML(INPUT) 块那样处理 HTML(REPORT) 块。

Net.Data 然后处理 myQuery() 函数调用,该函数调用依次调用 SQL FUNCTION 块。用在输入表中返回的值代替 SQL 语句中引用的 $(hdware) 变量之后,Net.Data 询问运行。在此点,Net.Data 再次开始将 HTML 报表发送给浏览器, 浏览器根据 REPORT 块中指定的 HTML 语句来显示查询结果。

Net.Data 完成 REPORT 块的处理之后,返回至 HTML(REPORT) 块,并结束处理。

Net. Data 在每次被调用时只处理一个 HTML 块。但是,通过使用 HTML 链接和表,可以让人 很容易地启动另一个 HTML 块上的另一个 Net.Data 调用,这都由您控制。


[ 页的顶部 | 上一页 | 下一页 | 目录 | 索引 ]