【问题标题】:using codeigniter export pdf files from mysql database使用codeigniter从mysql数据库导出pdf文件
【发布时间】:2011-12-20 15:27:14
【问题描述】:

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

在我的文件名中建模-membership_model.php。 在视图页面中,我有表单名称-send_form.php 但是在发送数据后,我有一个成功的页面名称 signup_successful.php 这是一个链接 export as pdf 按钮,它在登录页面中调用 topdf() .但它不起作用。请帮助 topdf 功能。

查看文件夹-signup_successful.php

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

控制器文件夹

登录.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();
    }
}

【问题讨论】:

  • "but is doesn't work" 不会飞到这里。更具体。
  • 所以没有错误,它坏了?

标签: php mysql html codeigniter


【解决方案1】:

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

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

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

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

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

【讨论】:

  • 我从数据库中调用数据这个函数-- function alldata() { $q = $this->db->get('membership'); if($q->num_rows() > 0) { foreach ($q->result() as $row) { $data[] = $row; } 返回$数据; } } 但主要问题是 topdf()。
  • @Arifkarim 您是否更正了 anchor() 函数?您是否尝试过删除对 cezpdf 库的调用,以查看问题是否存在?
猜你喜欢
  • 1970-01-01
  • 2013-05-12
  • 1970-01-01
  • 1970-01-01
  • 2011-06-06
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2011-11-23
相关资源
最近更新 更多