2016-04-12 9 views
1

テーブルをcsvファイルにエクスポートします。そのファイルはアセットのフォルダに保存する必要があります。ここで私はダウンロードdownload.howを使用してダウンロードのCSVファイルへのパスを設定できますか?そして、指定されたフォルダにcsvファイルとしてテーブルを保存する他の方法がありますか? plsは私を助けます..テーブルをcsv形式にエクスポートして指定したフォルダに保存する方法

$this->load->dbutil(); 
     $this->load->helper('file'); 

     $this->load->helper('download'); 
     $delimiter = ","; 
     $newline = "\r\n"; 
     $filename = "filename.csv"; 
     $query = "SELECT * FROM cyber_details"; 
     $result = $this->db->query($query); 
     $data = $this->dbutil->csv_from_result($result, $delimiter, $newline); 
     force_download($filename, $data); 
+0

特定のフォルダのサーバーにCSVファイルを保存しますか? – jagad89

答えて

0

私はあなたがサーバー側にCSVファイルを保存すると仮定します。あなたは

$this->load->dbutil(); 
    $this->load->helper('file'); 

    $this->load->helper('download'); 
    $delimiter = ","; 
    $newline = "\r\n"; 
    $filename = "filename.csv"; 
    $query = "SELECT * FROM cyber_details"; 
    $result = $this->db->query($query); 
    $data = $this->dbutil->csv_from_result($result, $delimiter, $newline); 
    if (! write_file('./path/to/file/file_name.csv', $data)) 
    { 
     echo 'Unable to write the file'; 
    } 
    else 
    { 
    echo 'File written!'; 
    } 

を以下のように行うことができます

は、あなたが選択したパスが書き込み動作を実行するための十分な権限を持っていることを確認してください。

1

が、これは、私のために働いてみてください:

function createcsv(){ 
     $this->load->dbutil(); 
     $this->load->helper('file'); 
     $this->load->helper('download'); 
     $delimiter = ","; 
     $newline = "\r\n"; 
     $filename = "filename.csv"; 
     $query = "SELECT * FROM YourTable"; 
     $result = $this->db->query($query); 
     $data = $this->dbutil->csv_from_result($result, $delimiter, $newline); 
     force_download($filename, $data); 

    } 
+0

それは強制的にダウンロードされます、質問はフォルダへのストアについてです。 – Cyber

0

は私も同じ問題を通じて来ていました。 以下のコードは私のために十分に機能しました。

$arry_to_csv[] = $data; 
$output_file_name = 'path/to/Rejected.csv'; 
    $temp_memory = fopen($output_file_name, 'w'); 
    $csv_headers = array_keys($arry_to_csv[0]); 
    $delimiter = ","; 
    fputcsv($temp_memory, $csv_headers, $delimiter); 
    $csv = ''; 
    foreach ($arry_to_csv as $line) { 
     $csv.= $line['first_name'] . ',' . $line['last_name'] . "\n"; 
    } 
    fwrite($temp_memory, $csv); 
    fclose($temp_memory); 
関連する問題