2017-12-13 5 views
0

Ich bin mit dem Exportieren von Daten aus der Datenbank mit Code Signither geschlagen. Hilfe wird sehr geschätzt.Codeigniter- Exportieren in CSV-Ausgaben

Dies ist mein Ansichtscode für dieses Problem.

<?php echo form_open(base_url('admin/consignment1/test_con'), 
$hiddenFields, 'class="form-horizontal"'); ?> 

<td><input type="submit" name="id" value="<?php echo $row['Con_No']; ?>" 
class="btn btn-info pull-left"> </td> 

-Controller

public function test_con(){ 
    $var= $this->input->post('id'); 
    $data['get_con_by'] = $this->consignment_model->get_con_by($var); 
    $data['view']='admin/consignment1/con_table'; 
    $this->load->view('admin/layout', $data); 
} 

Modell

public function get_con_by($var){ 

    $this->db->from('consignment'); 
    $this->db->where('Con_No',$var); 
    $query=$this->db->get(); 
    return $result = $query->result_array(); 
} 

Es gibt kein Problem mit Anzeigen auf meiner Ansicht der Daten. Wenn ich versuche, Daten aus dem Modell mit anderen Funktionen zu exportieren, erhalte ich meine CSV mit leeren Daten. Hier ist meine Funktion auf Controller für dasselbe Modell.

public function exportCSV(){ 
    // file name 

    $filename = 'Con_'.date('Ymd').'.csv'; 
    header("Content-Description: File Transfer"); 
    header("Content-Disposition: attachment; filename=$filename"); 
    header("Content-Type: application/csv; "); 

    // get data 
    $usersData = $this->consignment_model->get_con_by($var); 

    // file creation 
    $file = fopen('php://output', 'w'); 

    $header = array("ste","Name","Gender","Email"); 
    fputcsv($file, $header); 
    foreach ($usersData as $key=>$line){ 
     fputcsv($file,$line); 
    } 
    fclose($file); 
    exit; 
} 

Ich habe ein anderes Modell

public function get_all_pins(){ 
    $query = $this->db->get('consignment'); 
    return $result = $query->result_array(); 
} 

Ich habe nicht Problem mit in das CSV-Export

Der Unterschied zwischen den beiden scnerio ist

$usersData = $this->consignment_model->get_con_by($var); // Not working 

$usersData = $this->consignment_model->get_all_pins(); // working one. 

Können Sie mir helfen, wie zu lösen Dies.

+1

Ist es in 'test_con()' Ihre $ var mit $ var = $ this-> input-> post ('id'); Aber du weist $ var nicht in 'exportCSV()' zu? – ourmandave

Antwort

0

Um die Antwort auf Ihre Frage, überprüfen Sie in der Abfrage zu erhalten, die

$this->db->last_query() 

Check in der Abfrage generiert wird verwendet, die erzeugt wurde. Ist es dasselbe, was Sie erwarten, oder hat es ein Problem? Sie können die Ausgabe für dieselbe Abfrage in phpmyadmin überprüfen.

Das einzige Problem, das ich hier voraussehe, ist, dass die Abfrage, die erzeugt wird, keine Daten/Ausgabe zurückgibt, oder es könnte einen Fehler bei der Ausführung der Abfrage haben. Die zweite wird weniger erwartet. Aber das Debuggen auf diese Weise hilft Ihnen, Ihr tatsächliches Problem zu erreichen.