
谈两种数据库内容HTML格式的输出方法(2) |
二、应用FrontPage2000网页编辑工具与VFP系统编程技巧的结合实现,前一种方法生成的HTML格式文件是以表格形式出现的,每一行为一条记录,当数据库中字段内容过多,浏览生成的HTML格式文件就非常不方便。而在实际工作中,常常需要将某一个人的情况生成一页自定表格样式的HTML格式文件,利用上文提供的方法就不能实现了。可以采取应用FrontPage2000网页编辑工具与VFP系统编程技巧的结合,实现方式多样网页文件的生成输出要求。 首先使用FrontPage2000编辑工具,编辑一个所见即所得的静态网页,最终编辑的网页如下图: 在这个网页设计器中,生成的表格中前面带##的字符为所在生成网页格式数据来源中的数据库中的字段名称,如##姓名,其中姓名为数据库中字段名称。查看HTML源文件,我们把该源文件全部进行选择,然后进行复制操作。 新建一个数据库存放网页格式内容,该库命名为LSK.DBF,数据库中只有一个字段名为HTMLNR,备注型。为该数据库增加一条空记录,然后打开备注字段HTMLNR进入编辑窗口状态,然后执行粘贴操作,把在FrontPage2000生成网页格式源文件内容全部复制到该备注字段中,这样一个设计完好的网页格式库就生成了,在这里也可以生成大量的、不同格式的网页内容存贮到数据库中,供随时生成网页使用,这里我们以一种样式为例。 编写一段转换程序,该程序的主要工作原理为打开LSK数据库,取出生成网页的格式字符串内容,打开需要输出内容的干部基本情况数据库文件,用该数据库中相应字段的内容替换网页格式中以##为标识的字段串内容,全部字段内容替换完毕,最后将该格式的文本内容生成一个HTML文件,即可完成整个系统要求,编写的程序如下: USE LSK &&打开网页格式内容库 ZYNR=HTMLNR &&取出一个网页格式内容文本 USE RYK &&打开需要生成网页的数据库 ZYNR=STRTRAN(ZYNR,"##姓名",RYK.姓名) ZYNR=STRTRAN(ZYNR,"##性别",RYK.性别) &&因为字符替换函数只能使用字符型,所以日期型和数字型必须进行转换 ZYNR=STRTRAN(ZYNR,"##出生年月",STR(YEAR(RYK.出生年月))+‘.‘+STR(MONT(RYK.出生年月))+‘.‘+STR(DAY(RYK.出生年月))) ZYNR=STRTRAN(ZYNR,"##曾用名",RYK.曾用名) ZYNR=STRTRAN(ZYNR,"##民族",RYK.民族) ZYNR=STRTRAN(ZYNR,"##工作年月",STR(YEAR(RYK.工作年月))+‘.‘+STR(MONT(RYK.工作年月))+‘.‘+STR(DAY(RYK.工作年月))) ZYNR=STRTRAN(ZYNR,"##入学时间",STR(YEAR(RYK.入学时间))+‘.‘+STR(MONT(RYK.入学时间))+‘.‘+STR(DAY(RYK.入学时间))) ZYNR=STRTRAN(ZYNR,"##毕业时间",STR(YEAR(RYK.毕业时间))+‘.‘+STR(MONT(RYK.毕业时间))+‘.‘+STR(DAY(RYK.毕业时间))) ZYNR=STRTRAN(ZYNR,"##毕业院校",RYK.毕业院校) ZYNR=STRTRAN(ZYNR,"##学历",RYK.学历) ZYNR=STRTRAN(ZYNR,"##所学专业",RYK.所学专业) ZYNR=STRTRAN(ZYNR,"##家庭住址",RYK.家庭住址) ZYNR=STRTRAN(ZYNR,"##邮政编码",RYK.邮政编码) ZYNR=STRTRAN(ZYNR,"##家庭电话",RYK.家庭电话) ZYNR=STRTRAN(ZYNR,"##家庭电话",RYK.家庭电话) ZYNR=STRTRAN(ZYNR,"##手机号",RYK.手机号) ZYNR=STRTRAN(ZYNR,"##工作单位",RYK.工作单位) ZYNR=STRTRAN(ZYNR,"##现任何职",RYK.现任何职) ZYNR=STRTRAN(ZYNR,"##个人简历",RYK.个人简历) &&全部替换完毕,将最后的结果生成一个HTML文件 =STRTOFILE(ZYNR,‘ABC.HTM‘) USE RYK 执行这个程序,将会自动生成一个名字为ABC.HTM文件,在浏览器中查看这个文件,该文件显示如下: 我们发现数据库中的相关字段中的内容变成了该网页中的内容,这样就非常方便地实现了数据库中内容到网页格式文件的输出。在实际应用过程中,还可以事先设计生成大量的不同样式的网页存贮在数据库中,利用这个库方便地实现各类网页的输出,扩展了数据库数据内容的应用范围。 以上两种方法可以根据不同的要求进行使用,在实现应用中还可以先在数据库中执行查询操作,然后将查询的结果生成网页进行浏览,应用方法会更加灵活,有兴趣的读者不妨一试。 |