Codeigniter - 以 DOC 格式导出数据库数据

标签 codeigniter ms-word doc

我想使用 Codeigniter 将 MYSQL 数据库中的数据导出到 DOC 文件中。 我的代码如下:

名为“profile_top_view.php”的 View ,其中 anchor 声明为:

<?php echo anchor('welcome/todoc','Export Posts to DOC File') ?>

名为“welcome.php”的 Controller 具有以下功能:

 public function todoc() {
    $id = $this->tank_auth->get_user_id();
    $this->mpdf->useOnlyCoreFonts = true;
    $filename = "POSTS";
    $data['member'] = $this->s_model->alldata($id);
    $this->load->view('export_posts_doc_view', $data, true);
    $this->index();
}

名为“export_posts_doc_view.php”的 View ,其中将为 DOC 文件创建一个表:

<!DOCTYPE html>
<html lang="en">
    <head>
        <meta charset="utf-8">
        <title>Exported Posts in PDF File</title>
    </head>
    <body>
        <?php
        header("Content-Type: application/vnd.ms-word");
        header("Expires: 0");
        header("Cache-Control:  must-revalidate, post-check=0, pre-check=0");
        header("Content-disposition: attachment; filename=\"posts.doc\"");
        ?>


        <div id="container">
            <h4>Posts</h4>
            <table border="1">
                <tr>
                    <th>title</th>
                    <th>content</th>
                    <th>group</th>
                    <th>video_url</th>
                    <th>pic_path</th>
                    <th>name</th>
                    <th>phone</th>
                    <th>email</th>
                    <th>yes_no</th>
                    <th>single-line-text</th>
                    <th>para_text</th>
                    <th>pdf_file_name</th>
                    <th>add_photo_name</th>
                </tr>
<?php
foreach ($member as $rows) {
    ?>
                    <tr>
                        <td><?php echo $rows['title'] ?></td>
                        <td><?php echo $rows['content'] ?></td>
                        <td><?php echo $rows['group'] ?></td>
                        <td><?php echo $rows['video_url'] ?></td>
                        <td><?php echo $rows['pic_path'] ?></td>
                        <td><?php echo $rows['name'] ?></td>
                        <td><?php echo $rows['phone'] ?></td>
                        <td><?php echo $rows['email'] ?></td>
                        <td><?php echo $rows['yes_no'] ?></td>
                        <td><?php echo $rows['single-line-text'] ?></td>
                        <td><?php echo $rows['para_text'] ?></td>
                        <td><?php echo $rows['pdf_file_name'] ?></td>
                        <td><?php echo $rows['add_photo_name'] ?></td>
                    </tr>
    <?php
}
?>
            </table>

            <br> <br>

        </div>
    </body>
</html>

还有一个名为“s_model.php”的模型,具有以下功能:

  function alldata($id)
    {
        $this->db->select('');
        $this->db->from('posts');
            $this->db->where('user-id',$id);
        $getData = $this->db->get();
        if($getData->num_rows() > 0)
        return $getData->result_array();
        else return null;
    }

如果我保留该 header ,那么它会显示错误:

No webpage was found for the web address: http://www.my_ip.com/project/welcome/todoc

但是,如果我删除相同的 header ,它会显示 Controller 中回显的内容。 我从以下 URL 获取了该 header : exporting MS word documents using codeigniter?

谁能告诉我我该怎么办?

提前致谢..

最佳答案

得到答案

我在 Controller “welcome.php”中做了一些更改:

public function todoc() {
        $id = $this->tank_auth->get_user_id();
        $this->mpdf->useOnlyCoreFonts = true;
        $filename = "POSTS";
        $data['member'] = $this->s_model->alldata($id);      
        $this->load->view('export_posts_doc_view', $data);
    }

关于Codeigniter - 以 DOC 格式导出数据库数据,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/15217685/

相关文章:

php - Shopify Assets API 更新 collection.liquid 使用 PUT 方法提供 404 和 cURL

php - 检查属性是否存在 - 将 json 转换为 stdObject,然后将 value 或 null 插入 db

javascript - 在不打开打印对话框的情况下从 IE 打印 Word 文档

php - 如何在 HTML/PHP 中显示格式化的 Word 文档?

PHP:在 Linux 中从 .PDF、.DOC 和 .DOCX 生成图像缩略图

vb.net - 在 VB.Net 中将 Doc 文件转换为 PDF

php - 在 PHP 中打印最后执行的 Mysql 查询

php - 从 cronjob 调用 Codeigniter Controller

excel - 是否有一个地方可以存储所有 Microsoft Office 产品都可以 Access 的 VBA 代码?

merge - 有什么方法可以将文档与 Mercurial merge 但从不尝试解决冲突吗?