1

我已将 OpenTBS 设置为从我的联系人数据库动态生成。现在我想将电子邮件的实际内容设置为来自使用 CKeditor 或其他 WYSISYG JS 编辑器创建的 MySQL 表。

我已经能够让内容显示在输出的 docx 文件上,但它是作为带有 h​​tml 标签的应变出现的,我不知何故需要它来格式化,所以它是由客户端放入的。我只允许他们使用基本的、段落、粗体、斜体和其他一些标签。

这是不是我可以将此html字符串转换为文字副本/文本?或者以某种方式使用不同的所见即所得编辑器将其保存在 MySQL 中作为 word 代码而不是 html 代码。

谢谢

它并不真正相关,但下面是从模板和数据库(我使用的是 CakePHP)生成 OpenTBS 文档的函数 MailMerge.description 是目前带有 html 代码的主体。

// FUNCTION EXPORT MAIL MERGE
// -------------------------------------------------------------->
function mail_merge()
{
     Configure::write('debug',2);

    $this->layout = null;
    $this->autoRender = FALSE;  


    // GET THE CONTACTS
    // ------------------------------------------------------------->
    $contacts = $this->Contact->find('all', array('limit' => 20,  'contain' => FALSE));

    $this->loadModel('MailMerge');
    $content = $this->MailMerge->find('first', array(
                                                'conditions' => array('MailMerge.id' => 1),
                                                'fields' => array('MailMerge.description')
                                                ));


    // Get a new instance of TBS with the OpenTBS plug-in
    // ------------------------------------------------------------->
     $otbs = $this->Tbs->getOpenTbs(); 

    // Load the template file
    // ------------------------------------------------------------->
    $otbs->LoadTemplate(APP . DS . WEBROOT_DIR . '/files/data_files/enquiry_letter_sample_redcliffe.docx');

    // Merge data in the template
    // ------------------------------------------------------------->
    $otbs->MergeBlock('r', $contacts);
    $otbs->MergeBlock('content', $content);

    // End the merge and export
    // ------------------------------------------------------------->
    $file_name = 'export.docx';
    $otbs->Show(OPENTBS_DOWNLOAD, $file_name);

}
4

0 回答 0