2016-06-14 8 views
1

ich versuche, pdfs in loop gegen mitglieds-id zu erzeugen, aber jedes mal wenn ich nur das erste habe, habe ich code in foreach hinzugefügt, so dass es mehrmals läuft, aber es gibt mir nur ein pdf.please jemand hilft mir.coderigniter erzeuge mehrere pdfs

public function pdf($ids){ 

    $k = 0; 
    foreach ($ids as $key => $id) { 


    $data[$k]['academics'] = $this->Utility_model->get_all_from_table_where('member_academics', array('member_id' => $id)); 
    $data[$k]['member_employment'] = $this->Utility_model->get_all_from_table_where('member_employment', array('member_id' => $id)); 
    $data[$k]['member_data'] = $this->Utility_model->get_all_from_table_where('members',array('member_id' => $id)); 
    $data[$k]['disclosure'] = $this->Utility_model->get_all_from_table('generalsettings',array('key'=>'disclosure')); 
    $data[$k]['enrollment_fee'] = $this->Utility_model->get_all_from_table('member_invoices',array('user_id' => $id,'paymentFor'=>'Enrollment Fee')); 
    $data[$k]['enrollment_fee']['payment'] = $this->Utility_model->get_all_from_table('member_payments',array('invoice_id'=>$data[$k]['enrollment_fee']['id'])); 

    $j=0; 
    if (!empty($data[$k]['member_data'])) { 
     foreach ($data[$k]['member_data'] as $member) { 
      $data[$k]['member_data'][$j]['term'] = $this->Utility_model->get_all_from_table('term', array('term_id' => $member['term_id'])); 
      $data[$k]['member_data'][$j]['degree'] = $this->Utility_model->get_all_from_table('degree', array('degree_id' => $member['degree_id'])); 
      $data[$k]['member_data'][$j]['year'] = $this->Utility_model->get_all_from_table('year', array('year_id' => $member['year_id'])); 
      $data[$k]['member_data'][$j]['address'] = $this->Utility_model->get_all_from_table('member_addresses', array('id' => $member['address_id'])); 

      $j++; 
     } 
    } 

    $this->load->view('admin/reports_management/applications_pdf/pdf_output',$data[$k],false); 
    $html = $this->output->get_output(); 

    $this->load->library('dompdf_gen'); 
    $this->dompdf->load_html($html); 
    $this->dompdf->render(); 
    $this->dompdf->stream($k."file".".pdf"); 
    $k++; 
    } 
    // echo "<pre>"; 
    // print_r($data); 
    // die; 
} 
+0

Ich verstehe nicht ganz, was Sie tun wollen. Möchten Sie mehrere PDF-Dateien auf einer einzelnen Seite anzeigen? – Efekan

Antwort

0

Solange Sie die Seite nur einmal anfordern, können Sie die Controller-Methode nicht mehr als eine Datei ausgeben lassen. Sie könnten entweder versuchen, stattdessen eine mehrseitige PDF-Datei zu erstellen, oder Sie müssen ändern, wie der Controller aufgerufen wird, und sie mehrmals aufrufen.

Sehen Sie diese Antwort für eine Eingabe über mehrere Seiten PDF machen: How to create several pages with dompdf