J'ai un peu de mal à exporter un fichier csv créé à partir d'une de mes tables mysql en utilisant php.Export CSV from Mysql
Le code que j'utilise imprime les données correctes, mais je ne vois pas comment télécharger ces données dans un fichier csv, fournissant un lien de téléchargement vers le fichier créé. Je pensais que le navigateur était censé fournir automatiquement le fichier à télécharger, mais ce n'est pas le cas. (Serait-ce parce que le code ci-dessous est appelé en utilisant ajax?)
Toute aide grandement appréciée - le code ci-dessous, S.
include('../cofig/config.php'); //db connection settings
$query = "SELECT * FROM isregistered";
$export = mysql_query($query) or die("Sql error : " . mysql_error());
$fields = mysql_num_fields($export);
for ($i = 0; $i < $fields; $i++) {
$header .= mysql_field_name($export, $i) . "\t";
}
while ($row = mysql_fetch_row($export)) {
$line = '';
foreach ($row as $value) {
if ((!isset($value)) || ($value == "")) {
$value = "\t";
} else {
$value = str_replace('"', '""', $value);
$value = '"' . $value . '"' . "\t";
}
$line .= $value;
}
$data .= trim($line) . "\n";
}
$data = str_replace("\r", "", $data);
if ($data == "") {
$data = "\n(0) Records Found!\n";
}
//header("Content-type: application/octet-stream"); //have tried all of these at sometime
//header("Content-type: text/x-csv");
header("Content-type: text/csv");
//header("Content-type: application/csv");
header("Content-Disposition: attachment; filename=export.csv");
//header("Content-Disposition: attachment; filename=export.xls");
header("Pragma: no-cache");
header("Expires: 0");
echo '<a href="">Download Exported Data</a>'; //want my link to go in here...
print "$header\n$data";
Un grand merci pour l'aide de tout le monde - très apprécié. – ss888