file di download di php: header ()

Ho bisogno di qualche istruzione per favore. Alla fine di each mese, voglio scaricare alcuni dati dal mio webserver sul mio PC locale. Quindi, ho scritto un piccolo script per questo, che seleziona i dati dal DB. Successivamente, voglio scaricarlo. Ho provato questo:

$file=$month . '.txt'; $handle=fopen($file, "w"); header("Content-Type: application/text"); header("Content-Disposition: attachment, filename=" . $month . '.txt'); while ($row=mysql_fetch_arrays($res)) { $writestring = $row['data_I_want'] . "\r\n"; fwrite($handle, $writestring); } fclose($handle); 

Se eseguo questo, il file viene creato, ma il mio file non contiene i dati che voglio. Invece ottengo un dump dal file HTML nel mio browser .. Cosa sto facendo male .. Grazie, Xpoes

Sotto lo script ti aiuterà a scaricare il file creato

 //Below is where you create particular month's text file $file=$month . '.txt'; $handle=fopen($file, "w"); while ($row=mysql_fetch_arrays($res)){ $writestring = $row['data_I_want'] . "\r\n"; fwrite($handle, $writestring); } fclose($handle); //Now the file is ready with data from database //Add below to download the text file created $filename = $file; //name of the file $filepath = $file; //location of the file. I have put $file since your file is create on the same folder where this script is header("Cache-control: private"); header("Content-type: application/force-download"); header("Content-transfer-encoding: binary\n"); header("Content-disposition: attachment; filename=\"$filename\""); header("Content-Length: ".filesize($filepath)); readfile($filepath); exit; 

Il tuo codice attuale non emette un file, semplicemente invia le intestazioni.

per far funzionare lo script aggiungi il seguente codice dopo la tua dichiarazione fclose .

  $data = file_get_contents($file); echo $data;