2

我是 Codeigniter 的新手,想使用 MPDF 将 MYSQL 数据库中的数据导出到 PDF 文件中。代码如下:

看法:

<!DOCTYPE html>
<html lang="en">
    <head>
        <meta charset="utf-8">
        <title>Export PDF</title>
    </head>
    <body>
        <div id="container">
            <h4>Member Data</h4>
            <table border="1">
                <tr>
                    <th>group_id</th>
                    <th>group_name</th>
                    <th>Archieved</th>
                </tr>
                <?php
                foreach ($member as $rows) {
                    echo $rows['group_id'];
                    ?>
                    <tr>
                        <td><?php echo $rows['group_id'] ?></td>
                        <td><?php echo $rows['group_name']?></td>
                        <td><?php echo $rows['archieved'] ?></td>
                        </tr>
                        <?php
                        $i++;
                    }
                    ?>
            </table>
            <br> <br>
            <a href='<?php echo base_url(); ?>index.php/member_con/topdf'><span style='color:green;'>Export to Pdf</span></a>
        </div>
        <?php
        ?>
    </body>
</html>

控制器:

<?php

class Member_con extends CI_Controller {
    public function __construct() {
        parent::__construct();
        $this->load->model('member_model');
        $this->load->helper('url');
        $this->load->library('mpdf');
    }
    public function index() {
        $data['member'] = $this->member_model->alldata();
        $this->load->view('member_view', $data);
    }
    function topdf() {
        $this->mpdf->useOnlyCoreFonts = true;
        $filename = "VISH";
        $data['member'] = $this->member_model->alldata();
        $html = $this->load->view('member_view', $data['member'], true);
        $this->mpdf->setTitle('Posts');
        $this->mpdf->writeHTML($html);
        $this->mpdf->output($filename, 'D');
    }
}
?>

模型:

<?php
  class Member_model extends CI_Model {
      function __construct() {
        parent::__construct();
                $this->load->database();

    }
    function Member_Model() {
        parent::Model();
    }
    function alldata()
    {
        $this->db->select('*');
        $this->db->from('groups');
        $this->db->order_by('group_id','ASC');
        $getData = $this->db->get();
        if($getData->num_rows() > 0)
        return $getData->result_array();
        else return null;
    }
}
?>

使用此代码,它给了我一个空白的 PDF 文件,只有文本为“成员数据”和“导出为 pdf”。我检查了它是否正在将数据传递给查看,是的,它正在这样做。但不知道'foreach'循环是怎么回事。我正在打印“foreach”循环之外的所有内容,但对数据成员进行了机器人操作。谁能让我知道我该怎么办?

提前致谢....

4

1 回答 1

1

得到了答案。在控制器中,而不是

 $html = $this->load->view('member_view', $data['member'], true);

我使用了以下内容:

 $html = $this->load->view('member_view', $data, true);
于 2013-03-02T12:21:12.843 回答