php
  • mysql
  • sql
  • csv
  • 2017-03-19 8 views 1 likes 
    1

    次のコード出力CSVファイルにSQLクエリ結果:phpからcsvの1行にsqlクエリの結果を挿入するには?

    1:

    CODE

    <?php 
    // Report all errors except E_NOTICE 
    error_reporting(E_ALL^E_NOTICE); 
    
    //connection file 
    include("connection.php"); 
    
    $query  = 'SELECT resting_blood_sugar,serum_cholesterol,thalach,oldpeak,result,date from hd_test WHERE patient_id = 2';   
    $output = fopen('N:\oldpatientgraph.csv', 'w'); 
    $result = mysqli_query($link,$query); 
    
    // loop over the rows, outputting them 
    while ($row = mysqli_fetch_assoc($result)) fputcsv($output, $row); 
    
    ?> 
    

    OUTPUT

    CSVファイルは次の形式で出力を含んでいます、1,1,1,1,11-1-2015#line1

    2,3,1,4,2,1-1-2000#1 LINE2

    次のように私は出力に1行に結果を望むのに対し:

    1,1,1,1,1、 11-1-2015,2,3,1,4,2,1-1-2000#line1

    誰でもこれを行う方法を知っていますか?

    +0

    '$ out = []; while($ row = mysqli_fetch_assoc($ result))$ out = array_merge($ out、array_values($ row));; fputcsv($ output、$ out); ' – splash58

    +0

    それは@ splash58を動かしました。 ありがとう助けをたくさん:) – Neha

    答えて

    0

    は、すぐ下のように、行をconcancenate:

    // loop over the rows, outputting them 
    $arr1 = array(); 
    while ($row = mysqli_fetch_assoc($result)){ 
        $arr1 = array_merge($arr1,array_values($row)); 
    } 
    fputcsv($output,$arr1); 
    
    +0

    コードを確認してください...それは動作しません。 –

    +0

    'fputcsv'のパラメータが間違っています@arisalsaila –

    +0

    そして配列を文字列に連結しますか? –

    0

    あなたはこの

    $output = fopen('N:\oldpatientgraph.csv', 'w'); 
    $csvString = ''; 
    $index = 0; 
    while ($row = mysqli_fetch_assoc($result)){ 
        if ($key) { 
        $csvString.=','; 
        } 
        $csvString .= implode(',',array_values($row)); #Array values to string 
        $index = 1; 
    } 
    
    fwrite($output, $csvString); #Write string to file 
    fclose($output); 
    

    注意を試すことができます。コードの上は、1行にあなたのすべてのデータを提供します。

    +0

    データはオンラインになりますが、クエリ結果の各行はコンマで区切られていません。さらに、csvファイルには書き込まれません。 – Neha

    +0

    書き込みの問題については、 '' N:\ oldpatientgraph.csv ''の適切なファイル 'path/permissions'を確認してください。あなたの質問に 'var_dump($ row)'のデータを投稿できますか? @Neha –

    +0

    ファイルに書いても問題はありません.fputcsv()関数とうまく動作します。 – Neha

    関連する問題