Ciao, in rete ho trovato questo codice, che ho testato e funziona correttamente

Codice PHP:

<?php



 $host 
""// <-- inserisci qui l'indirizo ip di MySql

 
$user =  ""// <-- nome utente del database

 
$pass =  ""// <-- password dell'utente

 
$db ""// il database desiderato

 
$table ""// la tabella da esportare in .csv

 
$file $table// il nome del file csv da generare

 
$link mysql_connect($host$user$pass) or die("Can not connect." mysql_error()); /* usa i dati forniti per connetterti a MySql, se impossibile interrompi */

mysql_select_db($db) or die("Can not connect."); // seleziona il db desiderato oppure interrompi



         
$csv_output="";

         

         
$result mysql_query("SHOW COLUMNS FROM ".$table."");

         
$i 0;

         if (
mysql_num_rows($result) > 0) {

         while (
$row mysql_fetch_assoc($result)) {  

         
$csv_output .= $row['Field']."; ";

         
$i++;

         }

         }

         
$csv_output .= "\n"

         

         
$values mysql_query("SELECT * FROM ".$table."");

         while (
$rowr mysql_fetch_row($values)) {

         for (
$j=0;$j<$i;$j++) { 

         
$csv_output .= $rowr[$j]."; ";

         }

         
$csv_output .= "\n"

         }

         
$filename $file."_".date("d-m-Y_H-i",time()); // il nome del file sara' composto da quello scelto all'inizio e la data ed ora oggi

        

        /*$archivia = new ZipArchive();        

        $nome_file="archiviodb.zip";            

        if ($archivia->open($nome_file, ZIPARCHIVE::CREATE)!==TRUE) 

        {

          @exit("Impossibile aprire <$nome_file>\n");

        }

        $archivia->addFile("$filename.csv");*/         



        
header("Cache-Control: public");

        
header("Content-Description: File Transfer");

        
header"Content-disposition: attachment;filename=".$filename.".csv");

        
header("Content-type: application/ms-excel");

        
header("Content-Transfer-Encoding: binary");

         
//header("Content-disposition: csv" . date("Y-m-d") . ".csv");

         

         
print $csv_output// il file e' pronto e puo' essere scaricato

         
exit;

 
?>
Spero ti sia d'aiuto