sql >> Databasteknik >  >> RDS >> Mysql

Exportera tabell till CSV via php-knappen

Det är 2017 och mysqli är vanligare än mysql nu. Så här är en mysqli-version av Josh Liptzins svar:

<?php

/* Attempt MySQL server connection. */  
$connection = mysqli_connect($database_server, $database_username, $database_password, $database_name);

// Check connection
if($connection === false){
    die("ERROR: Could not connect. " . mysqli_connect_error());
}

$query = "SELECT * FROM Employee_data";
$result = mysqli_query($connection, $query);

$number_of_fields = mysqli_num_fields($result);
$headers = array();
for ($i = 0; $i < $number_of_fields; $i++) {
    $headers[] = mysqli_field_name($result , $i);
}
$fp = fopen('php://output', 'w');
if ($fp && $result) {
    header('Content-Type: text/csv');
    header('Content-Disposition: attachment; filename="export.csv"');
    header('Pragma: no-cache');
    header('Expires: 0');
    fputcsv($fp, $headers);
    while ($row = $result->fetch_array(MYSQLI_NUM)) {
        fputcsv($fp, array_values($row));
    }
    die;
}

function mysqli_field_name($result, $field_offset)
{
    $properties = mysqli_fetch_field_direct($result, $field_offset);
    return is_object($properties) ? $properties->name : null;
}

?>


  1. PHP - Importera CSV-fil till mysql-databas med LOAD DATA INFILE

  2. Laravel frågebyggare för rekursiva resultat? T.ex. id, parent_id

  3. Du kan nu använda Access med Microsoft Azure MFA!

  4. Proaktiva SQL Server Health Checks, Del 3:Inställningar för instans och databas