使用codeigniter从mysql数据库导出pdf文件

时间:2011-11-02 19:40:24

标签: php mysql html codeigniter

使用codeigniter我创建一个表单,我将数据插入MySQL数据库。完成插入后,我想将数据检索为PDF文件。

在modeld我的文件名 - membership _model.php。 在视图页面中,我有表单name- send_form.php 但发送数据后我有一个成功的页面名称 signup_successful.php 这里有一个链接导出为pdf 按钮,在登录页面中调用 topdf() 。但是不起作用。请帮助topdf功能。

在view folder- signup_successful.php

<p>Your data has been sent. 
<?php echo anchor('topdf', 'Export as PDF');?>
</p>

controllers文件夹

的login.php

<?php

class Login extends Controller {

    function index()
    {
       parent::Controller();
           $this->load->helper('pdf_helper');
    }


    function data_info()
    {
        $data['main_content'] = 'data_form';
        $this->load->view('includes/template', $data);
    }

    function sent_data()
    {
        $this->load->library('form_validation');
        // field name, error message, validation rules
        $this->form_validation->set_rules('first_name', 'Name', 'trim|required');
        $this->form_validation->set_rules('last_name', 'Last Name', 'trim|required');
        $this->form_validation->set_rules('email_address', 'Email Address', 'trim|required|valid_email');

        if($this->form_validation->run() == FALSE)
        {
        $this->load->view('data_form');
        }
        else
        {           
        $this->load->model('membership_model');
        if($query = $this->membership_model->send_data())
               //create_member call model create_member
        {
           $data['main_content'] = 'signup_successful';
           $this->load->view('includes/template', $data);
        }
        else
        {
            $this->load->view('data_form');
            }
         }  
    }

    function topdf () 
    {
       $this->load->library('cezpdf');
       $this->load->helper('pdf_helper');
       prep_pdf();
       $data['member']= $this->membership_model->alldata();
       $titlecolumn = array(
                'first-name' => 'First-name',
                'last_name' => 'Last_name',
                'email_address' => 'Email_address'
                       );
       $this->cezpdf->ezTable($data['member'], $titlecolumn,'Member Data');
       $this->cezpdf->ezStream();
    }
}

1 个答案:

答案 0 :(得分:0)

既然你没有提供任何关于什么不起作用的信息以及你的cezpdf库做了什么,我只能说你的代码

<?php echo anchor('topdf', 'Export as PDF');?>

正在调用错误的方法,除非你有一些你没有告诉我们的路由。要在控制器中调用topdf()方法,您需要使用:

<?php echo anchor('login/topdf', 'Export as PDF');?>

我正在等待更多信息继续猜测。