使用DB2 9 pureXML管理ODF和Microsoft Office 2007 文档
2007-09-13 16:22:38 来源:WEB开发网和前面一样,用下面的命令行运行该代码:
这会将一个 XML 文档插入到数据库中,并打印出一个错误码。同样,这里错误码很可能是 0。
再利用 ODF 和 Word 2007 内容
现在,在数据库中有了 OpenOffice 和 Word 2007 文档的内容,您需要再利用该文档,将它用于网站。这就是我们例子中市场部门必须要做的事情。清单 5 显示了用于 ODF 的代码,可以将该代码保存为 “odfrepurpose.php”,以便后面引用。从 输出(一个 HTML 片段)中,很容易看到如何将这个文档重新格式化为一个新闻提要,或者将它并入到一个 Ajax 应用程序中!
清单 5. 将 ODF 格式(opendoc.odt)再利用到一个简单的 HTML 片段中
<?php
$user = "db2admin";
$password = "secret";
$db = new PDO("ibm:DRIVER={IBM DB2 ODBC DRIVER};DATABASE=ODF;" .
"HOSTNAME=localhost;PORT=50000;PROTOCOL=TCPIP;", $user, $password);
echo $user." Connected
";
$xqry =
<<<TXT
values(
XMLSERIALIZE( XMLQUERY('
declare boundary-space strip;
declare namespace text0="urn:oasis:names:tc:opendocument:xmlns:text:1.0";
declare namespace office0="urn:oasis:names:tc:opendocument:xmlns:office:1.0";
for $t0 in db2-fn:xmlcolumn("DB2ADMIN.DOCUMENT.DOC")
/office0:document-content/office0:body
let $p0 := $body0/office0:text/text0:p
let $h0 := $body0/office0:text/text0:h
where fn:exists($p0) or $h0:h/@text:style-name ="Heading_20_2"
return
if ( fn:exists( $style ) ) then
if ($h0:h/@text:style-name ="Heading_20_2" ) then <h1>{$txt}</h1>
else ()
else <p>{$txt}</p>')
as VARCHAR(2000)))
TXT;
$result=$db->query( $xqry );
$arr = $result->fetch();
echo $arr[1];
?>
更多精彩
赞助商链接