使用获取的sql数据在PHP中创建MS文档,但循环效果不佳

时间:2018-08-16 13:53:05

标签: php html mysql

我的目标: 要将单元格信息从SQL数据库保存到Microsoft Word文档

此单元格为TEXT格式,并包含我之前在tinymce中创建的HTML代码块。在预览中看起来不错。所以我决定一言以蔽之。如您在下面的代码中看到的,我只是剪掉了垃圾标签。 卡住的步骤是将更多单元格信息放入一个文档文件(.doc)。

我做了一个循环来捕获数据,然后将它们放在一个变量中以进行捕获。但是,它仅到达第一个循环然后停止工作。如果您知道我在代码中做错了什么,请帮我指出。

$htmlout = "";
$html.= "<body style = 'width:815px'>";
$request = sql_query( "SELECT * FROM  table WHERE id = 1" );
while( $result = sql_fetch_array( $request ))
{
    $dom = new DOMDocument;
    //mb_convert_encoding($profile, 'HTML-ENTITIES', 'UTF-8')
    $dom->loadHTML( mb_convert_encoding( $result['lelet_szoveg'] ,'HTML-ENTITIES', 'UTF-8' ));
    $xPath = new DOMXPath( $dom );

    $nodes = $xPath->query('//*[@id="patient-details"]');
    if($nodes->item(0)) {
        $nodes->item(0)->parentNode->removeChild($nodes->item(0));
    }
    $nodes = $xPath->query('//*[@id="signature"]');

    if($nodes->item(0)) {
        $nodes->item(0)->parentNode->removeChild($nodes->item(0));
    }

    $nodes = $xPath->query('//*[@id="title"]');
    if($nodes->item(0)) {
        $nodes->item(0)->parentNode->removeChild($nodes->item(0));
    }

    $htmlout.= $dom->saveHTML();
}

$htmlout.= "<body>";
file_put_contents( 'document.doc', $htmlout );

0 个答案:

没有答案