2017-11-18 123 views
1

控制器:功能pdf_question()如何在codeigniter中使用mpdf?

public function pdf_question() 
{ 
    $data = []; 
    $pdfFilePath = "output_pdf_name.pdf"; 
    $this->load->library('m_pdf'); 
    $this->m_pdf->pdf->WriteHTML($this->load->view('pdf-question')); 
    $this->m_pdf->pdf->Output($pdfFilePath, "D"); 
} 

观点:

<html> 
<head> 
</head> 
<body> 
    <div class="container"> 
     <div class="col-lg-12" style="background:#38558a;"> 
      <h3 style="color:#ff7900;"><b>Quiz Questions</b></h3> 
      <hr> 
     </div> 
     <div class="row"> 
      <div class="col-md-12"> 
      <br/> 
       <div class="login-panel panel panel-default"> 
        <div class="panel-body"> 
         <a href="javascript:void(0)" class="btn btn-danger" style="float:right;" id="pdf">PDF</a> 
         <div class="col-lg-12" id="target"> 
          <?php 
           $this->db->select('*'); 
           $this->db->from('qbank'); 
           $query = $this->db->get(); 
           $result = $query->result_array(); 
           foreach($result as $row) 
           { 
            $qid = $row['qid']; 
            $question = $row['question']; 
          ?> 
            <div class="col-div-container"> 
             <table class="bix-tbl-container" width="100%" cellspacing="0" cellpadding="0" border="0"> 
              <tbody> 
               <tr> 
                <td rowspan="2" valign="top" align="left"><?php echo $qid; ?>.&nbsp;</td> 
                <td valign="top"><p><?php echo $question; ?></p></td> 
               </tr> 

               <tr> 
                <td valign="top"> 
                 <table width="100%" cellspacing="0" cellpadding="0" border="0" style="line-height: 1.7;"> 
                  <tbody> 
                   <?php 
                    $this->db->select('*'); 
                    $this->db->from('options'); 
                    $where = "qid = '$qid'"; 
                    $this->db->where($where); 
                    $sql = $this->db->get(); 
                    //echo $this->db->last_query(); 
                    $res = $sql->result_array(); 
                    foreach($res as $rows) 
                    { 
                     $option = $rows['q_option']; 
                   ?> 
                   <tr> 
                    <ol style="list-style-type: upper-alpha;"> 
                     <td width="5%"> 
                      <li><a href="javascript:void(0)"><input type="radio" name="radio_btn"></a></li> 
                     </td> 
                    </ol> 
                    <td width="99%"><?php echo $option; ?></td> 
                   </tr> 
                   <?php 
                    } 
                   ?> 
                  </tbody> 
                 </table> 
                </td> 
               </tr> 
              </tbody> 
             </table> 
            </div> 
            <hr/> 
          <?php 
           } 
          ?> 
         </div> 
        </div> 
       </div> 
      </div> 
     </div> 
    </div> 
</body> 
</html> 

在这段代码中,我创建一个具有名称的PDF question.php一个视图文件,现在我要出口这些问题转换成pdf甲酸盐为此我使用MPDF笨,我有负载M_pdf.php库和MPDF第三方,但它没有工作,那么告诉我一个错误,即

HTML contains invalid UTF-8 character(s) 
mPDF error: 

那么,我该如何解决这个问题?请帮助我。

谢谢

+0

如果你没有找到该解决方案,然后来[聊天](https://chat.stackoverflow.com/rooms/146504/codeigniter) –

+0

我已经得到解决@Fairy舞者:) – omkara

+0

这是解决方案$ html = $ this-> load-> view('pdf-question',$ data,true); – omkara

回答

1

在您的pdf_question函数中做一个简单的修改。

$html=$this->load->view('pdf-question', $data,true); 
$this->m_pdf->pdf->WriteHTML($html);