Ri-posto ciò che avevo postato tempo fa...
Spero ti serva.
"Posto il codice compldeto per il force-download di un csv (accorciando tutte le altre parti).
Codice PHP:
<?php
require_once ('mailboxes/Connections/mailboxes.php');
$mk_tmpDir = "C:/tmp/";
// Esporto in un file temporaneo il contenuto del db, formattato in un dato modo
$query_ = "SELECT * FROM ddt_bolle WHERE ANNO_DDT = 2005 ORDER BY NUMERO_DDT ASC";
$rslt = $mailboxes->Execute($query_) or die();
$unique_name = md5(uniqid(rand(), true));
$filetemp = $mk_tmpDir.$unique_name;
$fd = fopen($filetemp, "w");
while (!$rslt->EOF)
{
$ToWrite = $rslt->Fields('NUMERO_DDT').";";
$ToWrite.= $rslt->Fields('DATA_DDT').";";
$ToWrite.= "\r\n";
fwrite($fd, $ToWrite);
$rslt->MoveNext();
}
fclose($fd);
// Forzo lo scaricamento o l'apertura di tale file da parte dell'utente
// dimensione file (nome file da downloadare con path assoluto completo)
$dim = filesize($filetemp);
header("Content-Type: application/csv; name=".$unique_name);
header("Content-Transfer-Encoding: binary");
header("Content-Length: ".$dim);
header("Content-Disposition: attachment; filename=DDT_2005.csv");
header("Expires: 0");
header("Cache-Control: no-cache, must-revalidate");
header("Cache-Control: private");
header("Pragma: public");
readfile($filetemp);
exit;
Va su IE e Firefox senza grinze. "