PHP - MySQL query to CSV export

Discussion in 'Programming' started by sam20e, Jul 24, 2012.

  1. #1
    Hi

    I have a PHP script. Its a library management system. So after all the books are stored in the database i need to create multiple reports - like clicking a link which will execute the SQL command and export the result to CSV. Can anyone guide me how can we do this CSV export?

    Thanks
    Sam
     
    sam20e, Jul 24, 2012 IP
  2. freenet

    freenet Peon

    Messages:
    21
    Likes Received:
    1
    Best Answers:
    1
    Trophy Points:
    0
    #2
    You can export MySQL result like this script:

    
    // Export to CSV
    if($_GET['action'] == 'export') {     
    $rsSearchResults = mysql_query($sql, $db) or die(mysql_error());     
    $out = '';    
    $fields = mysql_list_fields('database','table',$db);    
    $columns = mysql_num_fields($fields);     
    // Put the name of all fields    
    for ($i = 0; $i < $columns; $i++) {    
    $l=mysql_field_name($fields, $i);    
    $out .= '"'.$l.'",';    
    }    
    $out .="\n";     
    // Add all values in the table    
    while ($l = mysql_fetch_array($rsSearchResults)) {    
    for ($i = 0; $i < $columns; $i++) {    
    $out .='"'.$l["$i"].'",';    
    }   
     $out .="\n";   
    }    
    // Output to browser with appropriate mime type, you choose ;)    
    header("Content-type: text/x-csv");    
    //header("Content-type: text/csv");    
    //header("Content-type: application/csv");    
    header("Content-Disposition: attachment; filename=search_results.csv");    
    echo $out;    
    exit;
    }
    PHP:
     
    freenet, Jul 24, 2012 IP